home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr25 / os2prg12.zip / MAIL46.TXT
Text File  |  1993-03-20  |  97KB  |  1,980 lines

  1.  
  2.  
  3. **** OS/2 Programming Q&A ****
  4.  
  5. Message : 1869 (OS/2 Programming Q&A)           Date... :  3/21/92 (1:10 Pm)
  6. From... : Brian Wiggins                         Refer.. : None
  7. To..... : All                                   Sec'ty. : Public
  8. Subject : INF files                             Rec'vd. : No
  9.  
  10. Does anybody know of a utility or a way to decode an INF file?  I can dump 
  11. the INF file to an ASCII file put there isn't formatting specifications in 
  12. it. I have IBM's dwscript program and can run the decoded file in order to 
  13. obtain a nicely formatted document. Thanks 
  14.  
  15. Message : 1870 (OS/2 Programming Q&A)           Date... :  3/22/92 (7:36 Pm)
  16. From... : Dave Both                             Refer.. : None
  17. To..... : All                                   Sec'ty. : Public
  18. Subject : OS/2 2.0 upgrade from beta            Rec'vd. : No
  19.  
  20. Sorry that I have been gone for several weeks.  I have been teaching IBMs 
  21. field force all about OS/2.  That task has kept me quite busy, and the time 
  22. I would have normally spent here, I spent preparing for the class and 
  23. making changes between classes. 
  24.    
  25. I have good news!!! 
  26.    
  27. All who obtained the beta code by ordering from this BBS will receive a 
  28. free copy of OS/2 2.0 GA code.  I have a database of your names in my hot 
  29. little hands.  We will send you a presigned upgrade form. This will 
  30. indicate that you have a right to the upgrade.  All you have to do is sign 
  31. it yourself and send it to the address on the form.  You will NOT need to 
  32. send a proof of license of any kind.  By doing it this way, we can 
  33. piggyback on the regular upgrade procedures and simplify matters 
  34. considerably. 
  35.    
  36. I want to thank you all for your patience with me as I worked through the 
  37. problems associated with this program.  We will know better how to do this 
  38. type of beta program in the future because of what you helped me do. 
  39.    
  40. You have also made a difference in the final product.  While many of the 
  41. bug reports and ideas which you left here were already known or had been 
  42. considered, some bug reports, a goodly number, actaually, were of 
  43. previously unreported problems.  Also, as many original ideas as I had time 
  44. to pass on were sent to folks in the places in IBM who could do something 
  45. about them. 
  46.    
  47. Thank you ALL for your help and support! 
  48.    
  49. Dave (:>) 
  50.  
  51. Message : 1871 (OS/2 Programming Q&A)           Date... :  3/23/92 (5:51 Pm)
  52. From... : Michael Wade                          Refer.. : 1866
  53. To..... : Dean Roddey                           Sec'ty. : Public
  54. Subject : Multiple Windows                      Rec'vd. : Yes
  55.  
  56. Thanks for the info.  I figured it out the other day.  I had a couple 
  57. of errors and between the bunch I was confusing the heck out of myself. 
  58. I appreciate your response. 
  59.    
  60.  -Mike Wade 
  61.  
  62. Message : 1872 (OS/2 Programming Q&A)           Date... :  3/24/92 (7:37 Am)
  63. From... : Greg Bryant                           Refer.. : 1855
  64. To..... : Barry Chalmers                        Sec'ty. : Public
  65. Subject : BMPs and invalid rects                Rec'vd. : No
  66.  
  67. Okay, the program works as follows:  When it starts up, it creates
  68. several child windows in the main client area.  One of these child
  69. windows creates a 400x400 bmp, associated with a memory device context a
  70. la just about every bmp sample I've seen.  At some point the user says
  71. start (well, actually the user has to click on start until the voice
  72. recognition part of OS/2 is done :-), and one or more background threads
  73. are started.  Each of these threads calculates the values for a single
  74. row of the bmp, then does a GpiSetBits to put these values into the bmp,
  75. then posts a message to the child window to indicate that a row is
  76. finished.
  77. Now some of the problems.  Currently, the case in the child wndproc for
  78. handling a row is just to invalidate itself.  The paint routine knows the
  79. size of the window and bitblts the bmp into it (a PS from winbeginpaint),
  80. allowing bitblt to do any stretching or compressing.  This takes a *long*
  81. time (~.5secs), and when the background thread posts its "row done"
  82. message, it gets swapped out, the foreground thread gets the focus, and
  83. the entire screen repaints, causing the background thread to sit idle.  I
  84. decided to try a couple avenues to solve this problem.
  85. First, why not just have the "row done" case paint the row itself, rather
  86. than sending _another_ message to the queue, should be simple.  So I did 
  87. a WinGetPS, set up the coordinates, and did a bitblt.  No image.  Do I
  88. need to validate (or invalidate) something to get this to appear?
  89. Next I tried what you do - just do invalidatea portion of the rectangle,
  90.  in the "row done", then do a winqueryupdaterect in the paint.  For some
  91. reason, and I'm assuming it has something to do with being a child
  92. window, that window never gets cleared - it just sits there with whatever
  93. bits happened to be on the screen at that location.  I'm still looking
  94. into that one.
  95. My final attempt was to make the background thread time-critical.  That
  96. was an equal disaster, as it appears the Gpi calls are not re-entrant. 
  97. Each row is getting calculated correctly, but only every 20th or so
  98. actually appears on the screen - it seems like the gpisetbits is getting
  99. confused.  If I create a semaphore and set it around the gpisetbits and
  100. the gpibitblt, everything works, but now it's slow again.  Sigh.
  101. As I said *ANY* help would be vastly appreciated.  Oh - I'm using 1.30.2
  102. with MSC 6.0, (and I've converted it to 6.149 with the same problems). 
  103. THe next step is to try it on LA, I had just removed all that stuff due
  104. to stability problems.
  105.  
  106. Thanks
  107. gb
  108.  
  109. Message : 1874 (OS/2 Programming Q&A)           Date... :  3/24/92 (10:42 Pm)
  110. From... : Steve Verlander                       Refer.. : None
  111. To..... : All                                   Sec'ty. : Public
  112. Subject : DM calls from REXX                    Rec'vd. : No
  113.  
  114. Has anyone had success making Dialog Manager calls from REXX?
  115. I have had no problems making them from C but can't seem to do it
  116. from REXX.
  117.  
  118. My RXSUBCOM REGISTER call works fine, but as soon as I issue a DMOPEN
  119. it locks up - everything! I very often have to reboot.  Any suggestions 
  120. appreciated.
  121.  
  122. Steve Verlander - Atlanta
  123.  
  124. Message : 1875 (OS/2 Programming Q&A)           Date... :  3/25/92 (3:20 Am)
  125. From... : Bill Kenning                          Refer.. : None
  126. To..... : All                                   Sec'ty. : Public
  127. Subject : Slider Shaft Sizing                   Rec'vd. : No
  128.  
  129. I am still unable to scale the length of a horizontal slider
  130. shaft.  I do not beleive you can use the Scroll Bar messages for
  131. sliders.  I have the following code fragment illustrating this:
  132.   
  133. MRESULT mrxRanges ;
  134. USHORT  usxMinimum, usxMaximum ;
  135.   
  136. // Get slider window handle
  137. hwndSlider = WinWindowFromID (hwnd, SLID_SLIDER1) ;
  138. // Get Min/Max Ranges for x (horz. slider shaft length coords.)
  139. mrxRanges = WinSendMsg (hwndSlider, SBM_QUERYRANGE, NULL, NULL) ;
  140. usxMinimum = SHORT1FROMMR (mrxRanges) ;
  141. usxMaximum = SHORT2FROMMR (mrxRanges) ;
  142. // Scale slider shaft length by 50%
  143. WinSendMsg (hwndSlider, SBM_SETSCROLLBAR, MPFROMSHORT (0),
  144.             MPFROM2SHORT (usxMinimum, usxMaximum / 2)
  145.            ) ;
  146.   
  147. The above code does not work.  As noted in previous messages, I
  148. have created a horizontal ribbonstrip slider type.  The problem
  149. is that the scale text (say 0 to 1000 RPM) is getting truncated
  150. at the end of the slider shaft.  I am looking for a way to scale
  151. the slider shaft length so the scale text will not get truncated. 
  152. The 'SLM_SETSLIDERINFO' message does not appear to support sizing
  153. slider shaft length (it only supports scaling the width using the
  154. 'SMA_SHAFTDIMENSIONS' parameter for horizontal slider shafts). 
  155. Does anyone know a way to scale the length
  156. of a horizontal slider shaft ?
  157. Regards...
  158.  
  159. Message : 1876 (OS/2 Programming Q&A)           Date... :  3/25/92 (3:22 Am)
  160. From... : Bill Kenning                          Refer.. : None
  161. To..... : All                                   Sec'ty. : Public
  162. Subject : Capture Mouse Msgs.                   Rec'vd. : No
  163.  
  164. I want to change the mouse pointer to an 'hourglass' while I am
  165. processing in a dialog box.  I use 'WinSetPointer' in the
  166. 'WM_MOUSEMOVE' message to do this.  In order to keep the mouse
  167. pointer as an 'hourglass' (regardless of the mouse position on
  168. the screen) until the dialog window is dimissed, I need to use
  169. 'WinSetCapture' to insure that if the mouse pointer is positioned
  170. over another window or a control window it will not revert to an
  171. arrow type pointer.  I tried to use 'WinSetCapture' during the
  172. 'WM_INITDLG' message before the dialog window is displayed, but
  173. it is apparently not recognized, as when the dialog is displayed
  174. the arrow will appear if over another window or a dialog control. 
  175. Why can't I use 'WinSetCapture' during 'WM_INITDLG' processing ? 
  176. Any suggestions on how to set the capturing of mouse messages to
  177. my dialog window until the dialog window is dimissed ?
  178. Regards...
  179.  
  180. Message : 1878 (OS/2 Programming Q&A)           Date... :  3/25/92 (11:28 Pm)
  181. From... : Glenn Spiegelman                      Refer.. : 1774
  182. To..... : David Gillespie                       Sec'ty. : Public
  183. Subject : C SET/2                               Rec'vd. : Yes
  184.  
  185. The latest cut of CSET/2 & Tools and Info do discuss SOM which does OOP
  186. on the desktop. I also believe that Borland will have an OS/2 C++ in the
  187. near future
  188.  
  189. Message : 1879 (OS/2 Programming Q&A)           Date... :  3/26/92 (10:5 Pm)
  190. From... : Pete Haidinyak                        Refer.. : None
  191. To..... : All                                   Sec'ty. : Public
  192. Subject : file not found                        Rec'vd. : No
  193.  
  194. HELP! 
  195.    I am having a friend beta test some software of mine. When I give him 
  196. the files needed to run the program (one exe and one dll) and he tries to 
  197. run the program, the system comes back with 
  198. can not find file . 
  199.    
  200. He has the DLL in the same directory as the exe, and in his path. What am I 
  201. missing. 
  202.      Thanks 
  203.    
  204.      Pete [Village Idiot] Haidinyak 
  205.  
  206. Message : 1880 (OS/2 Programming Q&A)           Date... :  3/27/92 (11:49 Am)
  207. From... : John Kennedy                          Refer.. : 1879
  208. To..... : Pete Haidinyak                        Sec'ty. : Public
  209. Subject : file not found                        Rec'vd. : Yes
  210.  
  211.   But is the DLL in the LIBPATH?
  212.  
  213. Message : 1881 (OS/2 Programming Q&A)           Date... :  3/27/92 (11:53 Am)
  214. From... : Justin Frank                          Refer.. : None
  215. To..... : All                                   Sec'ty. : Public
  216. Subject : OS/2 2.0 Development                  Rec'vd. : No
  217.  
  218.    
  219.    
  220.    
  221.    
  222.    
  223.    
  224.    
  225.    
  226.    
  227.    
  228.    
  229.    
  230.    
  231.    
  232.    
  233. Hello -- I have a question about development tools for OS/2 2.0: 
  234. Where do I get them (C compiler, PM toolkit, etc.)? When will the non-=beta 
  235. versions be available? I have heard rumors that IBM will sell 'group' 
  236. licenses.  Is this true? 
  237. Thanks for the help & info 
  238. -- Justin Frank 
  239.  
  240. Message : 1882 (OS/2 Programming Q&A)           Date... :  3/27/92 (10:5 Pm)
  241. From... : Alan Duboff                           Refer.. : 1879
  242. To..... : Pete Haidinyak                        Sec'ty. : Public
  243. Subject : file not found                        Rec'vd. : Yes
  244.  
  245. Pete,
  246.  
  247. Have your friend detach the program instead of running it (i.e., have him
  248. type "detach progname.exe" from the command prompt).
  249.  
  250. This will tell you the .DLL that the program cannot find, but it won't
  251. have a .DLL extention.
  252.  
  253. If you had a program that used a .DLL called MYPROG.DLL, if the .DLL was
  254. missing, the error would come back as 
  255.  
  256. can not find file MYPROG.
  257.  
  258. It *IS* a .DLL that it can't find.
  259.  
  260. ajd
  261.  
  262. Message : 1883 (OS/2 Programming Q&A)           Date... :  3/27/92 (11:44 Pm)
  263. From... : Patrick Mueller                       Refer.. : 1807
  264. To..... : Pete Haidinyak                        Sec'ty. : Public
  265. Subject : MLE Delete                            Rec'vd. : Yes
  266.  
  267. Have you tried doing a WinSetWindowText() on the MLE?
  268.  
  269. As far as I know, there are no significant differences in the 1.3 and 2.0
  270. MLE (other than, I assume, 32 bit support).  IBM recently announced the
  271. next version of WorkStation Platform/2 (version 1.2).  Included in
  272. WorkStation Platform/2 is a 'thing' called Edit Components and Services. 
  273. Basically, it's a 'higher level' MLE - a component you can include in
  274. your application to do text editing.  It provides the frame - you
  275. customize the action bar, and can bind macros (written in C and Rexx) to
  276. events that occur in the editor (user pressed a key, file is being
  277. loaded, cursor moved, etc).  Instead of customizing by subclassing, you
  278. just tell the editor what you want it to do when.  Also included is a
  279. standalone editor, which looks kind of like the system editor, but has
  280. many more action bar items, and is fully programmable.  Some interesting
  281. features in the edit control are multiple fonts/colors within the text,
  282. readonly/hidden text, and highlighting test within the editor.  I didn't
  283. see an announcement on the BBS, so you'll have to contact your IBM rep
  284. for more info.  Bad part - the price is a bit steep.  
  285.  
  286. pat
  287.  
  288. Message : 1884 (OS/2 Programming Q&A)           Date... :  3/28/92 (3:24 Am)
  289. From... : Bill Kenning                          Refer.. : None
  290. To..... : All                                   Sec'ty. : Public
  291. Subject : IPF Tools                             Rec'vd. : No
  292.  
  293. Is anyone aware if an editor or programmer generator is available to
  294. produce help files in RTF (Rich Text Format) ?  RTF is used in help files
  295. and the embedded text commands are a pain in a normal editor to produce.
  296. Regards...
  297.  
  298. Message : 1885 (OS/2 Programming Q&A)           Date... :  3/28/92 (8:58 Am)
  299. From... : Jack Hiatt                            Refer.. : 1884
  300. To..... : Bill Kenning                          Sec'ty. : Public
  301. Subject : IPF Tools                             Rec'vd. : Yes
  302.  
  303. Look in Dir.10 there is a file there called Helpedit.zip, and another 
  304. called Helpedt12.zip, that sound like what you are looking for. 
  305.  
  306. Message : 1887 (OS/2 Programming Q&A)           Date... :  3/30/92 (3:20 Pm)
  307. From... : Justin Frank                          Refer.. : None
  308. To..... : Sysop                                 Sec'ty. : Public
  309. Subject : OS/2 2.0 Development Tools            Rec'vd. : No
  310.  
  311. Please see message 1881 in conference 3 and pass it on to the apporiate 
  312. people.  Thank-you! I would very much like to develop s/w for OS/2 but 
  313. can't seem to get started! 
  314. -- Justin Frank 619-792-2960 
  315.  
  316. Message : 1888 (OS/2 Programming Q&A)           Date... :  3/31/92 (3:30 Am)
  317. From... : Bill Kenning                          Refer.. : None
  318. To..... : All                                   Sec'ty. : Public
  319. Subject : Message Box from another Th           Rec'vd. : No
  320.  
  321. When an application is started what is the order of window
  322. messages received by the main window being initiated ?  Are they
  323. as follows:
  324.   
  325. WM_CREATE -> WM_SHOW -> WM_FOCUSCHANGE -> WM_ACTIVATE ->
  326. WM_SETFOCUS -> WM_SETSELECTION -> WM_PAINT -> ????
  327.   
  328. I am trying to initiate a start-up message box from another
  329. thread to be displayed as soon as the WM_PAINT processing is
  330. completed for the main window.  I have been successful in showing
  331. the message box window, however, the main window is still the
  332. active window and the message box is shown deactivated.  Hitting
  333. the 'OK' PB in the message box activates it and deactivates the
  334. main window.  Then the message box is destroyed and the main
  335. window is reactivated.  In the message box thread I'm using the
  336. WinWaitMsg (habMain, WM_PAINT, 0) routine (checking the main
  337. window message queue) to wait for the main window to be painted. 
  338. However, there must be something going on after the WM_PAINT
  339. message because of the activation problem described above.  Note
  340. that a DosSleep (500) routine after the 'WinWaitMsg' will show
  341. the message box activated correctly. I assume that some other
  342. message processing by the main window is being allowed to
  343. complete which affects the activation state. What am I doing
  344. wrong ?
  345. Regards...
  346.  
  347. Message : 1889 (OS/2 Programming Q&A)           Date... :  3/31/92 (6:34 Am)
  348. From... : Preston Hauck                         Refer.. : None
  349. To..... : All                                   Sec'ty. : Public
  350. Subject : OS/2 2.0 DDK                          Rec'vd. : No
  351.  
  352. Microstar Laboratories manufactures IBM-compatible data acquisition 
  353. hardware. We have written an OS/2 version 1.2 device driver that interfaces 
  354. our data acquisition hardware to OS/2 applications.  We would like to 
  355. port this device driver to OS/2 version 2.0. What is the cost of the 
  356. version 2.0 DDK and how do we order it? 
  357.  
  358. Message : 1890 (OS/2 Programming Q&A)           Date... :  3/31/92 (11:4 Am)
  359. From... : Greg Province                         Refer.. : None
  360. To..... : All                                   Sec'ty. : Public
  361. Subject : TRAP D Errors                         Rec'vd. : No
  362.  
  363. Is anyone any good at tracing down Prot. Violations using the classic dumps 
  364. that OS/2 1.3 so graciously provides its somewhat buggy C applications??  I 
  365. have a PM application which runs nicely for while and then out of the blue 
  366. gets such an error.  Supposedly the CS(code segment) and IP(instruction 
  367. pointer) are clues for the programmer to locate the error within the 
  368. program, but when I tell the compiler (msc 6.0) to print me different 
  369. listings (asm, source/asm, object, etc) they just don't seem to refer me 
  370. back to where the CS and IP are refering to.  Can anyone help me to trace 
  371. back the CS and IP to specific functions and lines in my source?  Or at 
  372. least tell me of any books which addresss this...  Thanks. 
  373.  
  374. Message : 1891 (OS/2 Programming Q&A)           Date... :  4/ 1/92 (3:40 Pm)
  375. From... : Russell Wilson                        Refer.. : None
  376. To..... : All                                   Sec'ty. : Public
  377. Subject : DosQFileInfo call in 1.3              Rec'vd. : No
  378.  
  379. I'm trying to use the DosQFileInfo call with OS/2 1.3 and I can't seem 
  380. to decode the format of the FDATE and FTIME structures for the file 
  381. date and time stamps. If anyone has an example or could explain the format 
  382. I would greatly appreciate it. 
  383.  
  384. Message : 1892 (OS/2 Programming Q&A)           Date... :  4/ 1/92 (11:11 Pm)
  385. From... : Patrick Mueller                       Refer.. : 1884
  386. To..... : Bill Kenning                          Sec'ty. : Public
  387. Subject : IPF Tools (| Windows Tools?)         Rec'vd. : Yes
  388.  
  389. OS/2 doesn't use RTF for the source code for help, but I think Windows 
  390. does. 
  391.    
  392. pat 
  393.  
  394. Message : 1893 (OS/2 Programming Q&A)           Date... :  4/ 1/92 (11:15 Pm)
  395. From... : Patrick Mueller                       Refer.. : 1890
  396. To..... : Greg Province                         Sec'ty. : Public
  397. Subject : TRAP D Errors                         Rec'vd. : Yes
  398.  
  399. I assume that you've tried to let CodeView help you out.  Start the PM
  400. with CodeView from a full screen session, and then just it run.  When it
  401. traps, you may get lucky (I often do), and CodeView will show you right
  402. where the trap occurs.  If it occurs in something you don't have source
  403. for (another DLL, the runtime library, etc.), you call check the call
  404. stack to see who called THAT function.
  405.  
  406. Other than that, I know there is a way to figure out where in the code is
  407. associated with CS:IP, but I don't know how myself.
  408.  
  409. pat
  410.  
  411. Message : 1894 (OS/2 Programming Q&A)           Date... :  4/ 1/92 (11:19 Pm)
  412. From... : Patrick Mueller                       Refer.. : 1891
  413. To..... : Russell Wilson                        Sec'ty. : Public
  414. Subject : DosQFileInfo call in 1.3              Rec'vd. : Yes
  415.  
  416. This is in C right?  They're done with bit fields.  If you've never used 
  417. them in C before, time to pick up a reference (Harbison & Steele, K&R, SAA C
  418. reference).  The structures themselves are documented in both the Control 
  419. Program Programming Reference and BSEDOS.H, so I won't bother repeating 
  420. them here (you can't really do much without a manual (online or hardcopy) 
  421. and the .h files).  Some sample code that uses the structures is below.  It 
  422. translates the structures into a 'human' readable string 
  423.    
  424.      sprintf(date,"%2.2d/%2.2d/%2.2d", 
  425.              (int) ffbuf.fdateLastWrite.month, 
  426.              (int) ffbuf.fdateLastWrite.day, 
  427.              (int) ffbuf.fdateLastWrite.year+80); 
  428.    
  429.      if (0 == ffbuf.ftimeLastWrite.hours) 
  430.         ffbuf.ftimeLastWrite.hours = 24; 
  431.    
  432.      sprintf(time,"%2.2d:%2.2d:%2.2d", 
  433.              (int) ffbuf.ftimeLastWrite.hours, 
  434.              (int) ffbuf.ftimeLastWrite.minutes, 
  435.              (int) ffbuf.ftimeLastWrite.twosecs * 2); 
  436.  
  437. Message : 1895 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (12:32 Am)
  438. From... : Terry Fry                             Refer.. : 1890
  439. To..... : Greg Province                         Sec'ty. : Public
  440. Subject : TRAP D Errors                         Rec'vd. : Yes
  441.  
  442. Greg,
  443.       Selector values are going to be assigned at runtime, CS will
  444. be filled in by the loader.  IP is an offset, and will point to
  445. the instruction in your code (if its not a DLL) but you need
  446. to know if you have run past 64k code.  
  447. Best thing to do is run codeview until a trap occurs, codeview will
  448. recover the error, and if its in your code it'll show you.
  449. Could be worse, it could have said nothing.....
  450.  
  451. Message : 1896 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (1:2 Am)
  452. From... : Greg Province                         Refer.. : 1895
  453. To..... : Terry Fry                             Sec'ty. : Public
  454. Subject : TRAP D Errors                         Rec'vd. : Yes
  455.  
  456. Yes, yes I use codeview and it's just fine when you know how to re-create a 
  457. particular error, but what about the application that runs in production 
  458. for hours, days, maybe weeks without an error and then wham, you get a call 
  459. from the user saying that the program died with a protection violation and 
  460. can't exactly remember what he was doing.  What makes this even worse is 
  461. that it is a client-server app closely conversing with an AS/400.  I can't 
  462. be sure that its not bad data from the AS400. 
  463.    
  464. What I need is a way to determine from the stack just what functions have 
  465. been called and what line of source was being executed.  It sounds like I 
  466. need a post-mortem debugger.  Anyone know of any for OS/2?  Thanks. 
  467.  
  468. Message : 1897 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (1:24 Am)
  469. From... : Bill Kenning                          Refer.. : 1889
  470. To..... : Preston Hauck                         Sec'ty. : Public
  471. Subject : OS/2 2.0 DDK                          Rec'vd. : Yes
  472.  
  473. I beleive the cost was about $195.  Call IBM to order.  I don't know the
  474. exact phone number but the HelpWare phone is 1-800-PS2-2227.  HelpWare is
  475. an IBM tech. support line for PS/2 hardware and OS/2.  They will direct
  476. you to the right phone number.  Also, check out the services that IBM can
  477. supply....I got a little booklet from HelpWare that had lots of good
  478. information and phone numbers to call.
  479. Regards...
  480.  
  481. Message : 1898 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (1:28 Am)
  482. From... : Bill Kenning                          Refer.. : 1892
  483. To..... : Patrick Mueller                       Sec'ty. : Public
  484. Subject : IPF Tools (| Windows Tools?)          Rec'vd. : Yes
  485.  
  486. Thanks Patrick.  I meant IPF.  I assume that the correct name for the
  487. imbedded code in a help file.
  488. Regards...
  489.  
  490. Message : 1899 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (3:20 Am)
  491. From... : Preston Hauck                         Refer.. : 1897
  492. To..... : Bill Kenning                          Sec'ty. : Public
  493. Subject : OS/2 2.0 DDK                          Rec'vd. : Yes
  494.  
  495. Thanks for the info.  Unfortunately, I've already called the Help line. 
  496. They transferred me to a 1-900 number and $25 dollars later I was told 
  497. that the only way to get the DDK was by requesting it on this bulletin 
  498. board.  HELP!  Does you booklet have any other numbers that might be 
  499. likely candidates? 
  500.  
  501. Message : 1900 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (12:57 Am)
  502. From... : Wayne Schneider                       Refer.. : None
  503. To..... : All                                   Sec'ty. : Public
  504. Subject : OS/2 1.30 SDK                         Rec'vd. : No
  505.  
  506. We have been developing software for OS/2 for 3 years using the software 
  507. developers kit from MicroSoft.  However, the latest SDK that we can find is 
  508. for version 1.2 of OS/2.  We know there are changes that make up OS/2 
  509. version 1.3 but we've been unsuccessful in locating an updated SDK or 
  510. documentation concerning the changes.  Does anyone out there have 
  511. information about where we can get technical, detailed information on 
  512. version 1.3?  Is there an SDK for 1.3? How about QuickHelp for 1.3? 
  513.  
  514. Message : 1901 (OS/2 Programming Q&A)           Date... :  4/ 2/92 (11:30 Pm)
  515. From... : Ray Gronek                            Refer.. : 1772
  516. To..... : J Kelley                              Sec'ty. : Public
  517. Subject : Monospaced fonts                      Rec'vd. : Yes
  518.  
  519.    
  520. There is a way to set the  PRESPARAMS to any font.  One method is the 
  521. name of the font.  The other is to load the font into the Presentation 
  522. Space - obtaining a handle to the font.  Then set the font with the 
  523. handle. 
  524.    
  525. Examine the PRESPARAM types to find the one requiring a handle. 
  526.  
  527. Message : 1902 (OS/2 Programming Q&A)           Date... :  4/ 3/92 (7:29 Am)
  528. From... : Mark Stega                            Refer.. : 1900
  529. To..... : Wayne Schneider                       Sec'ty. : Public
  530. Subject : OS/2 1.30 SDK                         Rec'vd. : Yes
  531.  
  532. Wayne:
  533.   Given that MS is doing all in it's power to prevent OS/2 from
  534. succeeding, you won't be surprised that it is virtually impossible to get
  535. a 1.3 kit from MS.  Apparently it IS possible to get it as part of the
  536. Lan Manager 2.1 development kit since LM2.1 ships with a generic MS-OS/2
  537. 1.3.
  538.   However, a much better solution is to get IBM's developers toolkit for
  539. OS/2 V1.3 (or better yet move to 2.0 if you can).  It has all the updated
  540. docs, include files, etc, and replaces quickhelp with .INF files that you
  541. use VIEW.EXE.
  542.   Hope this helps,
  543. Mark Stega
  544.  
  545. Message : 1903 (OS/2 Programming Q&A)           Date... :  4/ 3/92 (9:6 Am)
  546. From... : Michael Rockwell                      Refer.. : None
  547. To..... : All                                   Sec'ty. : Public
  548. Subject : NetUseAdd Command                     Rec'vd. : No
  549.  
  550. I nedd help with the NetUseAdd command everytime I use it I get an error 15 
  551. (invalid drive letter).  I an using a level 1 structures and filling it 
  552. with the following data. 
  553.    
  554. ui1_remote = "\\\\SERVER\\SHARE"; 
  555. ui1_local = "O:"; 
  556. ui1_password = NULL; 
  557.    
  558. Does anyone know what I am doing wrong?  Any help would be appreciated. 
  559.  
  560. Message : 1905 (OS/2 Programming Q&A)           Date... :  4/ 4/92 (12:16 Am)
  561. From... : Alan Duboff                           Refer.. : 1901
  562. To..... : Ray Gronek                            Sec'ty. : Public
  563. Subject : Monospaced fonts                      Rec'vd. : No
  564.  
  565. Ray,
  566.  
  567. It is not true that you can change to ANY font with PRESPARAMS, you can
  568. only use bitmap fonts in reality.
  569.  
  570. ATM fonts are not supported with PRESPARAMS.
  571.  
  572. ajd
  573.  
  574. Message : 1906 (OS/2 Programming Q&A)           Date... :  4/ 4/92 (3:33 Am)
  575. From... : Bill Kenning                          Refer.. : 1899
  576. To..... : Preston Hauck                         Sec'ty. : Public
  577. Subject : OS/2 2.0 DDK                          Rec'vd. : Yes
  578.  
  579. The numbers in the HelpWare booklet are as follows:
  580. OS/2 Information Line:  1-800-342-6672
  581. OS/2 Support Line: 1-800-237-5511
  582. OS/2 Application Assistance Center: 1-800-547-1283
  583. All of these are IBM phone numbers.  One of them should be able to help
  584. you order a DDK, SDK, etc. for OS/2 2.0.
  585. Regards...
  586.  
  587. Message : 1907 (OS/2 Programming Q&A)           Date... :  4/ 4/92 (9:23 Am)
  588. From... : Sysop                                 Refer.. : None
  589. To..... : All                                   Sec'ty. : Public
  590. Subject : Multi Line Edit                       Rec'vd. : No
  591.  
  592. Does anyone have a bit of samples code that shows how to use the 
  593. MLECTLDATA structure when you call WinDlgBox? 
  594.    
  595. I am trying to create a dialog box that contains a multiline entry field. 
  596. I want to control how many characters can be entered. 
  597. I know I could send a MLM_SETTEXTLIMIT message but I thought it would be 
  598. better to set that and other things like the import/export format when 
  599. I created the MLE control.   Sounds easy, but I can't figure out how 
  600. the MLE control knows to use the MLECTLDATA structure. 
  601.    
  602. Any help would be greatly appreciated. 
  603.    
  604. Wyn Easton - SysOp 
  605.  
  606. Message : 1908 (OS/2 Programming Q&A)           Date... :  4/ 4/92 (10:21 Am)
  607. From... : Regis Digiacomo                       Refer.. : 1896
  608. To..... : Greg Province                         Sec'ty. : Public
  609. Subject : TRAP D Errors                         Rec'vd. : Yes
  610.  
  611. MultiScope has a post-mortem debugger for OS/2. But it doesn't work
  612. well (at all) with the linker from C6. Have to use the linker from
  613. C5.1. Don't know if they fixed this yet. Heard they are working on
  614. a newer version for 2.0
  615.  
  616. Message : 1909 (OS/2 Programming Q&A)           Date... :  4/ 6/92 (11:15 Am)
  617. From... : Tim Thiemel                           Refer.. : None
  618. To..... : Sysop                                 Sec'ty. : Public
  619. Subject : Developers Assistance Progr           Rec'vd. : Yes
  620.  
  621. Sysop, 
  622.      Can you please tell me if the Developers Assistance Program is still 
  623. around? If so, what are it's benefits and what does it take to qualify. 
  624. I've asked our local IBM rep, but she must be pretty busy since it has 
  625. been about 2 weeks now without a response. We are planning on writing an 
  626. OS/2 scanner driver for the IBM Image Plus Workstation Program/2 and are 
  627. primarily interested in getting a PS/2 loaner system to do so. I  know 
  628. that IBM used to make such systems available in the past, but I'm not sure 
  629. if it was through DAP or some other program. Any information that you can 
  630. give me would be greatly appreciated. 
  631.    
  632. Thanks for your help in advance, 
  633.    
  634. Tim 
  635.  
  636. Message : 1911 (OS/2 Programming Q&A)           Date... :  4/ 6/92 (3:38 Pm)
  637. From... : Coop One                              Refer.. : 1909
  638. To..... : Tim Thiemel                           Sec'ty. : Public
  639. Subject : Developers Assistance Progr           Rec'vd. : No
  640.  
  641. Tim, 
  642.     There is a number that you need to call, but I don't know it off the 
  643. top of my head.  I'll find out what it is and get back to you. 
  644. Martha  Co-SysOp. 
  645.  
  646. Message : 1912 (OS/2 Programming Q&A)           Date... :  4/ 6/92 (4:45 Pm)
  647. From... : Wayne Schneider                       Refer.. : 1907
  648. To..... : Sysop                                 Sec'ty. : Public
  649. Subject : Multi Line Edit                       Rec'vd. : Yes
  650.  
  651. Wyn:
  652. In order to use MLECTLDATA structure to set the text limit for
  653. MLE controls, I think you need to use WinCreateDlg instead of
  654. WinDlgBox. We have an application where we generate dialog boxes
  655. at run-time based on contents of a database. To get the basic
  656. dialog frame and several buttons, we first load a dialog box
  657. from the resource using DosGetResource2:
  658.   PDLGTEMPLATE dlgTemplate, newTemplate;
  659.   res = DosGetResource2 (hmod, RT_DIALOG, dlgId, dlgTemplate);
  660. We then allocate a new template, copy dlgTemplate into it and
  661. add our own DLGTITEMs for additional controls, which include,
  662. among others, the possibility for MLE controls. The last field
  663. in DLGTITEM is offCtlData, which is the offset in PDLGTEMPLATE
  664. of the MLECTLDATA record. We then create the dialog with WinCreateDlg:
  665.   hwnd = WinCreateDlg (hwndParent, hwndOwner, DlgProc, newTemplate,
  666. NULL);
  667. WARNING:
  668. OS/2 1.2 seems to work well with this technique. However, we have
  669. had trouble with OS/2 1.3. It ends up causing massive quantities
  670. of memory to be allocated when the MLE inits itself. We can only
  671. guess that the MLECTLDATA record changed between 1.2 and 1.3, but
  672. we are still in the process of finding out how it changed.
  673. If you have any insight into this, please let us know.
  674.  
  675. Message : 1913 (OS/2 Programming Q&A)           Date... :  4/ 7/92 (3:25 Am)
  676. From... : Preston Hauck                         Refer.. : 1906
  677. To..... : Bill Kenning                          Sec'ty. : Public
  678. Subject : OS/2 2.0 DDK                          Rec'vd. : Yes
  679.  
  680. Many thanks for the info.  I'll give those numbers a try.
  681.  
  682. Message : 1914 (OS/2 Programming Q&A)           Date... :  4/ 7/92 (9:39 Am)
  683. From... : Doug Burger                           Refer.. : None
  684. To..... : All                                   Sec'ty. : Public
  685. Subject : Serial Comm.                          Rec'vd. : No
  686.  
  687. I have an interesting problem with serial communications.  Using a
  688. combination of DosDevIOCtl and DosRead/DosWrite calls, I am
  689. communicatioing through COM2 with an async protocol converter.  I am
  690. using CTS/RTS flow control, 9600, N, 8, 1.  This works fine for a while. 
  691. After some hours (about 8), the CTS line will drop and stay dropped. 
  692. This effectively stops communication.  I am sure that the reading process
  693. is still reading, and the input buffer is empty.  Can anyone offer any
  694. insight?
  695.  
  696. Another question I have is if a programm is communicating via DosDevIOCtl
  697. and DosRead/DosWrite, is the IBM LANACS redirection software supposed to
  698. redirect the async communications over the LAN?  I have a report from a
  699. customer that this is not working, but I don't know enough about LANACS
  700. to be helpful.  It seems to me that communicating via OS/2 system calls
  701. would allow for redirection.  
  702.  
  703. Any help would be appreciated.
  704.  
  705. Doug
  706.  
  707. Message : 1918 (OS/2 Programming Q&A)           Date... :  4/ 8/92 (4:50 Am)
  708. From... : Dave Both                             Refer.. : None
  709. To..... : John Arbuckle                         Sec'ty. : Public
  710. Subject : Upgrade policy                        Rec'vd. : Yes
  711.  
  712. John, I have made your message public because I want folks to know that it 
  713. its a problem.  I am already working on this problem, however. 
  714.    
  715. What I would like everyone to do (nudge, nug=dge, wink, wink...) if you 
  716. have a problem with the policy of one full set upgrade and the rest 
  717. additional licenses per LOCATION, please call: 
  718.    
  719. Bart Kellerman:  914-288-2118  For IBMers he is at T/L 351-2118. 
  720.    
  721. Thanks for YOUR help! <G> 
  722.    
  723. Dave (:>) 
  724.  
  725. Message : 1919 (OS/2 Programming Q&A)           Date... :  4/ 8/92 (6:35 Pm)
  726. From... : Nobuo Ohtake                          Refer.. : None
  727. To..... : All                                   Sec'ty. : Public
  728. Subject : long file name                        Rec'vd. : No
  729.  
  730. I have a problem not to open a file with its long name.
  731.      e.g.    arrow_keys.c
  732.  
  733. I can not open when I use DosOpen2
  734.  
  735. e.g.     DosOpen2(fname, &fp, &flg, 0, 0,
  736.                        FILE_OPEN,
  737. OPENACCESS_READONLY|OPEN_SHARE_DENYNONE,
  738. NULL, 0 );
  739.  
  740. I get an error code 206 ERROR_FILENAME_EXCED_RANGE.
  741.  
  742. How can I open a file with its long name.
  743. Show me how, please.
  744.           Thanks  
  745.  
  746. Message : 1920 (OS/2 Programming Q&A)           Date... :  4/ 8/92 (8:28 Pm)
  747. From... : Franciso Montero                      Refer.. : None
  748. To..... : All                                   Sec'ty. : Public
  749. Subject : E                                     Rec'vd. : No
  750.  
  751. can you install any games for free? 
  752.  
  753. Message : 1921 (OS/2 Programming Q&A)           Date... :  4/ 8/92 (9:12 Pm)
  754. From... : George Barrowcliff                    Refer.. : None
  755. To..... : All                                   Sec'ty. : Public
  756. Subject : CPU Monitor                           Rec'vd. : No
  757.  
  758. Does anyone have any experience with a CPU performance monitor?  One which 
  759. would show all executing programs along with the resources they have 
  760. attatched to?  How about some documentation on how to interpret the results 
  761. of PSTAT?  How about an XGA driver for the IBM 8515 display in 800 x 600? 
  762.    
  763.                     Thanks for any answers 
  764.  
  765. Message : 1923 (OS/2 Programming Q&A)           Date... :  4/ 9/92 (8:2 Am)
  766. From... : Eric Kanitz                           Refer.. : 1921
  767. To..... : George Barrowcliff                    Sec'ty. : Public
  768. Subject : CPU Monitor                           Rec'vd. : Yes
  769.  
  770. George you may want to take at look at a product called "CPU Monitor for 
  771. OS/2" from BonAmi Software, (508) 371-1997. I'm planning on ordering the 
  772. product shortly, so I can only say that it it looks very impressive, esp. 
  773. for $149.95. If you have any experience with mainframe performance 
  774. monitors, you'll like this one. It can do things like change dispatching 
  775. priority's, kill processes, suspend threads, etc. From talking with one of 
  776. the developers there, it appears as though a few of the functions like KILL 
  777. are dependant on the PM message loop, so non-PM apps don't get the full 
  778. feature set. Still a very interesting product, certainly worth looking at. 
  779.  
  780. Message : 1925 (OS/2 Programming Q&A)           Date... :  4/ 9/92 (8:31 Am)
  781. From... : Mark Stega                            Refer.. : 1919
  782. To..... : Nobuo Ohtake                          Sec'ty. : Public
  783. Subject : long file name                        Rec'vd. : Yes
  784.  
  785. Did you use MARKEXE (or a similar utility) to mark the executable as
  786. long file name aware?
  787. -mark-
  788.  
  789. Message : 1926 (OS/2 Programming Q&A)           Date... :  4/ 9/92 (8:37 Am)
  790. From... : Eric Kanitz                           Refer.. : None
  791. To..... : All                                   Sec'ty. : Public
  792. Subject : Extended Services X.25 API            Rec'vd. : No
  793.  
  794. I would be very interested in talking with anyone that has some experience 
  795. with the X.25 API. I am developing a check authorization server on a Model 
  796. 95 using the X.25 Co-processor. I've completed the database part developing 
  797. on a non-MCA clone. I should receive the MCA stuff next week and would 
  798. appreciate it if anyone can give me some tips or knows of any un-documented 
  799. hacks that may complicate things. 
  800.    
  801.                     Thanx, 
  802.                          Eric 
  803.  
  804. Message : 1927 (OS/2 Programming Q&A)           Date... :  4/ 9/92 (11:16 Am)
  805. From... : Russell Wilson                        Refer.. : 1894
  806. To..... : Patrick Mueller                       Sec'ty. : Public
  807. Subject : DosQFileInfo call in 1.3              Rec'vd. : Yes
  808.  
  809. Thank you very much. I am programming in C and had never encountered 
  810. a stucture like this. Your examples were most helpful. 
  811.    
  812. Russell Wilson 
  813.  
  814. Message : 1928 (OS/2 Programming Q&A)           Date... :  4/ 9/92 (9:45 Pm)
  815. From... : Bill Sykes                            Refer.. : 1921
  816. To..... : George Barrowcliff                    Sec'ty. : Public
  817. Subject : CPU Monitor                           Rec'vd. : Yes
  818.  
  819. XGA does not due 800x600, but it does do 1024x768 on the 8515.  I think it 
  820. looks good. 
  821.  
  822. Message : 1929 (OS/2 Programming Q&A)           Date... :  4/10/92 (12:40 Am)
  823. From... : Terry Fry                             Refer.. : 1896
  824. To..... : Greg Province                         Sec'ty. : Public
  825. Subject : TRAP D Errors                         Rec'vd. : Yes
  826.  
  827. Sorry about responding so late to your last post... I screwed up
  828. my last read pointers on this BBS somehow and missed your message.
  829.  
  830. Yes you definitely need a post-mortem debugger and a co-operative
  831. client <g>.  Multi-scope made a 1.x debugger but I don't know if
  832. its still in their product line or not... it had a decent post
  833. mortem debugger. 
  834.  
  835. However, there really should be enough information to determine where
  836. the failure is in the dump if its a TRAP error.  If its a SYSTEM HALTED
  837. error then the display information is a bit different.
  838. I have had serial device drivers croak on me on slow 286 machines
  839. pressed into high speed comm work under 1.3 and the system would
  840. HALT due to... well something... inside that driver, the display
  841. is very different.  Could you post a sample or the actual screen
  842. that is being show?
  843.  
  844. Message : 1930 (OS/2 Programming Q&A)           Date... :  4/10/92 (5:20 Pm)
  845. From... : Scott Mccarty                         Refer.. : None
  846. To..... : All                                   Sec'ty. : Public
  847. Subject : Programming under OS/2                Rec'vd. : No
  848.  
  849. I would like to know what OS/2 programmers are using to write for 2.0. I
  850. have finally given up on using the WorkFrame environment except for final
  851. compilations and clean-up. Are there any good full-screen editors that
  852. work with IBM C Set/2. I just can't type in the cramped PM environment.
  853. Does anyone know if the MS programming editor MEP will receive
  854. error/warning messages from C Set/2?
  855.  
  856. Message : 1931 (OS/2 Programming Q&A)           Date... :  4/10/92 (7:35 Pm)
  857. From... : Gary Little                           Refer.. : None
  858. To..... : All                                   Sec'ty. : Public
  859. Subject : OS/2 Developement                     Rec'vd. : No
  860.  
  861. My company has been doing 1.3 developement for our customers using off the 
  862. shelf tools usch as PWB, C 6.0 and MASM 6.0, but we are beginning find a 
  863. lot of gotchas and feel the need for the 1.3 devlopement kit.  This we can 
  864. acquire from ValCom in Costa Mesa California, but we also need NetBios 
  865. programming support and the rest of the developement capabilities needed 
  866. for LAN's.  Does anyone know or have the IBM part numbers, or is all of 
  867. this included in the Tool Kit and Programmeres referrence for 1.3?? 
  868.  
  869. Message : 1932 (OS/2 Programming Q&A)           Date... :  4/10/92 (7:44 Pm)
  870. From... : Gary Little                           Refer.. : None
  871. To..... : All                                   Sec'ty. : Public
  872. Subject : NetBIOS IBM Token Ring                Rec'vd. : No
  873.  
  874. Problem: NetBIOS packets are being lost when being received at a very high 
  875. data rate. 
  876.    
  877. Situation: 
  878.      One PC starts a session the sends 10 packets of data numbered 0 to 9; 
  879.      next data packet waits for completeion of previous send 
  880.    
  881.      Receiving OS/2 machine listens to start session then using either 
  882.      Receive or Recive-Any commands to receive data in a seperate thread. 
  883.      Data is passed to the main thread using RAM semaphores 
  884.    
  885.      Main thread displays and places messages in log file. 
  886.    
  887.      Typically the second message (#1) is missing from log and display 
  888.      while tenth (#9) is repeated twice. 
  889. If the sending PC pauses to do a printf of its outgoing data between SENDS, 
  890. no errors occur. 
  891.    
  892. The sending PC always shows no errors. 
  893.  
  894. Message : 1933 (OS/2 Programming Q&A)           Date... :  4/10/92 (8:52 Pm)
  895. From... : William Bresler                       Refer.. : 1911
  896. To..... : Tim Thiemel                           Sec'ty. : Public
  897. Subject : Developers Assistance Progr           Rec'vd. : No
  898.  
  899. The DAP is still very much in existence. The main number for information 
  900. and/or registration is 407-982-6408.  If you have the PS/2 Assistant, which 
  901. you can download from this BBS via the AD command, it has a large number of 
  902. IBM phone numbers.  The hyper link for this number gives more information 
  903. about benefits and how to qualify.  The basic benefits include discounts on 
  904. selected H/W and S/W, a subscription to the IBM Personal Systems Developer 
  905. magazine, an account on IBMLink which you can use to ask technical 
  906. questions and scan their database of questions and answers, and several 
  907. types of access to IBM classes.  If you qualify, the program is free.  I am 
  908. saying all of this as a member of the DAP myself.  Hope this helps. 
  909.    
  910.                ---William Bresler 
  911.  
  912. Message : 1934 (OS/2 Programming Q&A)           Date... :  4/10/92 (9:4 Pm)
  913. From... : William Bresler                       Refer.. : 1929
  914. To..... : Greg Province                         Sec'ty. : Public
  915. Subject : TRAP D Errors                         Rec'vd. : Yes
  916.  
  917. I thought I would jump into this thread and add a couple of things.  I have 
  918. used the MultiScope Post Mortem debugger with 1.x applications using the 
  919. linker provided with OS/2 1.3 and the IBM C/2 compiler (which is more or 
  920. less the same as MS C 5.1) and that works as long as the trap does not 
  921. occur within a system DLL.  You install a device driver and add a call in 
  922. your main() function to register your application.  When (if) a trap 
  923. occurs, the device driver will create a dump of your process's memory in a 
  924. form which can be used by the debugger.  Warning: the file is often large - 
  925. >600K.  You can also deliver your application to a customer so that all of 
  926. this happens transparently, except for adding the device driver to 
  927. config.sys. 
  928.    
  929. Second, it is possible to make use of the trap screen registers.  As has 
  930. been pointed out, the selector values in the CS, DS, SS, ES registers are 
  931. determined at load and/or runtime.  A link map will only list segments by 
  932. number: 1, 2, 3 etc.  What you can use to locate the offending module is 
  933. the CSLIM value which is the limit (or size) of the segment which is stored 
  934. in the LDT entry for the CS selector.  You can either look at link maps to 
  935. see if one of you code segments matches that size, or you can use a program 
  936. which ws developed by IBM for just such a need.  It's called FINDSEG.  If 
  937. you are a member of the Developer Assistance Program, you can download it 
  938. from the ESDTOOLS service.  Perhaps it is lurking on another BBS.  This 
  939. program will search your entire disk looking for files with segments whose 
  940. size matches the given size within a given range.  It can even disassemble 
  941. the instruction if you give it the IP value.  This has saved my reputation 
  942. on a number of occations when it turns out to be someone else's program 
  943. which is trapping. <g>  Once you know the module, you can generate a 
  944. listing which includes the generated assembly code and thus match up the IP 
  945. value.  The rest of the registers may help to tell you why it trapped. 
  946.    
  947. The only thing this leaves out is a function call trace from the stack.  I 
  948. know of no way to do this except with a debugger.  Note - sometimes the 
  949. trap occurs inside an OS/2 system DLL.  In that case, your task is more 
  950. difficult, but you can usually find out which call was in progress.  If you 
  951. need help with this, perhaps I can save this for a future message. 
  952.    
  953. If you cannot locate a copy of FINDSEG, perhaps one of the IBMers involved 
  954. with this BBS can help. 
  955.    
  956. I hope at least some of this helped.  Until I found out about these tools, 
  957. I had no way of using the trap screen to track down the bug, so I 
  958. understand how you feel.  If you need more info, send me a message.  Good 
  959. luck and good hunting. <g> 
  960.    
  961.                ---William Bresler 
  962.  
  963. Message : 1935 (OS/2 Programming Q&A)           Date... :  4/10/92 (9:31 Pm)
  964. From... : William Bresler                       Refer.. : 1931
  965. To..... : Gary Little                           Sec'ty. : Public
  966. Subject : OS/2 Developement                     Rec'vd. : Yes
  967.  
  968. Unfortunately, the Programming Tools and Information kit only covers the 
  969. base OS calls, PM, device drivers, printing, etc., but not network 
  970. programming.  OS/2 1.x Extended Edition comes with header files and 
  971. libraries for the DLLs for all of the communications components, but no 
  972. documentation.  If you have the PS/2 Assistant from this BBS, it gives all 
  973. of the part numbers for the documents.  If not, let me include some of the 
  974. numbers for you: 
  975.    
  976. IBM LAN Tech Ref: 39F9353 
  977.  NETBIOS Application Developers Guide: 68X2270 
  978.  Networking Services/2 APPC Programming Reference: SC52-1112 
  979.  Networking Services/2 Common Programming 
  980.    Interface Communications (CPI-C) Reference: SC26-4399 
  981.  Networking Services/2 System Management 
  982.    Programming Reference: SC52-1111 
  983.  OS/2 LAN Server 1.2 Application Programmer's 
  984.    Reference: S01F-0256 
  985.    
  986. The ones with hyphens are form #'s, the others are part #'s (IBM's 
  987. terminology, not mine).  For LAN Server APIs, the vast majority of the APIs 
  988. match those in Microsoft LAN Manager so you can also use their books which 
  989. are published by Microsoft Press.  The upcoming LAN Services product is 
  990. supposed to by fully API compliant with the LAN Manger 2.1 product. 
  991.    
  992. Hope this helps, and I do recommend downloading the PS/2 Assistant for the 
  993. wealth of information it provides. 
  994.    
  995.                ---William Bresler 
  996.  
  997. Message : 1936 (OS/2 Programming Q&A)           Date... :  4/10/92 (10:20 Pm)
  998. From... : Steven Kladitis                       Refer.. : None
  999. To..... : All                                   Sec'ty. : Public
  1000. Subject : libpath                               Rec'vd. : No
  1001.  
  1002. Does os2 2.0 still have a libpath that can only be changed by rebooting 
  1003. system?  It would be great if it could be changed or just even added to 
  1004. while running. 
  1005.  
  1006. Message : 1937 (OS/2 Programming Q&A)           Date... :  4/10/92 (10:22 Pm)
  1007. From... : Steven Kladitis                       Refer.. : None
  1008. To..... : All                                   Sec'ty. : Public
  1009. Subject : config.sys                            Rec'vd. : No
  1010.  
  1011. is there a way to stop and or fix config.sys during  the boot process. 
  1012. With V1.3 I always have a boot disk (DOS) so I can fix config.sys problems. 
  1013. There is a great utility for DOS called ce.exe from the folks who write 
  1014. Magic CodeView and I have never had a config.sys I could not fix with 
  1015. ce.exe as the first device in config.sys. 
  1016.  
  1017. Message : 1938 (OS/2 Programming Q&A)           Date... :  4/10/92 (11:18 Pm)
  1018. From... : Steve Newell                          Refer.. : 1879
  1019. To..... : Pete Haidinyak                        Sec'ty. : Public
  1020. Subject : file not found                        Rec'vd. : Yes
  1021.  
  1022. Have your friend add a period and a semicolon to the beginning of his
  1023. LIBPATH line in his config.sys.  This will tell OS/2 to search in the
  1024. current directory for the dll.  
  1025. Example: LIBPATH=.;C:\OS2\DLL;...
  1026. Hope this helps
  1027. Steve
  1028.  
  1029. Message : 1939 (OS/2 Programming Q&A)           Date... :  4/10/92 (11:38 Pm)
  1030. From... : Patrick Mueller                       Refer.. : 1936
  1031. To..... : Steven Kladitis                       Sec'ty. : Public
  1032. Subject : libpath                               Rec'vd. : Yes
  1033.  
  1034. Still has libpath, and still can't be changed.  The . trick is great, in
  1035. fact, I believe that's the way your config.sys is set up when you first
  1036. install.
  1037.  
  1038. pat
  1039.  
  1040. Message : 1940 (OS/2 Programming Q&A)           Date... :  4/10/92 (11:39 Pm)
  1041. From... : Patrick Mueller                       Refer.. : 1937
  1042. To..... : Steven Kladitis                       Sec'ty. : Public
  1043. Subject : config.sys                            Rec'vd. : Yes
  1044.  
  1045. I've never heard of anything like this for OS/2.  Note if you have HPFS
  1046. on your boot partition, booting DOS won't help a bit.  You can always
  1047. boot the OS/2 installation disk, and press Esc at the prompt after
  1048. inserting disk 1.  From here you have a command prompt, but you'll need a
  1049. text mode editor to change config.sys at this point.
  1050.  
  1051. pat
  1052.  
  1053. Message : 1942 (OS/2 Programming Q&A)           Date... :  4/11/92 (6:27 Pm)
  1054. From... : Steven Kladitis                       Refer.. : 1939
  1055. To..... : Patrick Mueller                       Sec'ty. : Public
  1056. Subject : libpath                               Rec'vd. : Yes
  1057.  
  1058. the 'famous' '.' only works when you are in the directory of the porogram 
  1059. you want to execute. At least it works that way for me in V1.3 wr5050 
  1060. Seems like ti could be handled better. 
  1061.  
  1062. Message : 1943 (OS/2 Programming Q&A)           Date... :  4/11/92 (6:29 Pm)
  1063. From... : Steven Kladitis                       Refer.. : 1940
  1064. To..... : Patrick Mueller                       Sec'ty. : Public
  1065. Subject : config.sys                            Rec'vd. : Yes
  1066.  
  1067. I saw in my early beta copy a file called hpfs.sys to be used when booiting 
  1068. dos to gain acces to an hpfs drive.  if this is not the case anymore could 
  1069. be pretty dissapointing. 
  1070.  
  1071. Message : 1944 (OS/2 Programming Q&A)           Date... :  4/12/92 (2:58 Pm)
  1072. From... : Ed June                               Refer.. : None
  1073. To..... : All                                   Sec'ty. : Public
  1074. Subject : Watcom & Hayes                        Rec'vd. : No
  1075.  
  1076.    
  1077. I just heard an ugly rumor that Hayes has aquired Watcom! 
  1078. This really disturbs me, as I was leaning toward Watcom too. 
  1079. Anyone who has experienced the ESI/ESP lie know what I'm talking about, 
  1080. Hayes CAN'T even write properly working device drivers for OS/2 for their 
  1081. hardware. I sincerely hope they leave the Watcom operation alone, else, I 
  1082. fear they WILL ruin a very good product! 
  1083.    
  1084. BTW, can anyone confirm the Watcom/Hayes deal? 
  1085.  
  1086. Message : 1945 (OS/2 Programming Q&A)           Date... :  4/12/92 (9:14 Pm)
  1087. From... : William Rucker                        Refer.. : None
  1088. To..... : All                                   Sec'ty. : Public
  1089. Subject : OS/2 2.0 Debugging                    Rec'vd. : No
  1090.  
  1091. There is a new book out by Steven Mastrianni called Writing OS/2 2.0
  1092. Device Drivers in C.  In the book he talks about a debugger called KBD
  1093. which is contained in the file OS2KRNLD which uses a COM port w/an ASCII
  1094. terminal attached to it for debugging device drivers.  Does anyone know
  1095. where I can obtain the debugger?
  1096.  
  1097. Thanks, Bill Rucker
  1098.  
  1099. Message : 1946 (OS/2 Programming Q&A)           Date... :  4/12/92 (10:44 Pm)
  1100. From... : Bill Kenning                          Refer.. : 1945
  1101. To..... : William Rucker                        Sec'ty. : Public
  1102. Subject : OS/2 2.0 Debugging                    Rec'vd. : Yes
  1103.  
  1104. The kernal debugger was included with the OS/2 beta up to and including
  1105. version 6.177H.  Beta version 6.304 specifically documents that the
  1106. kernal debugger would not work.  I don't know if the GA release includes
  1107. it or not, but I beleive the kernal debugger is no longer supported. 
  1108. Many, many beta versions ago it was stated that the kernal debugger was
  1109. not going to be a comercially available product.  It looks like this came
  1110. to pass with the 6.304 beta.  I hope that it will be reinstated as part
  1111. of the SDK...but no word on this.  I suggest a post to Mark Chapman or
  1112. Dave Both (IBM OS/2 reps. on this BBS) regarding this.
  1113. If you were not familiar with the kernal debugger, it was a replacement
  1114. file (you listed the correct filename) that trapped OS/2 errors and
  1115. allowed a terminal connected to the serial port to dump registers, etc. 
  1116. I used it a little, but wasn't into device drivers, etc. so I didn't get
  1117. proficient with the kernal debugger.  I can see where it would be VERY
  1118. useful debugging device drivers however.
  1119. Regards...
  1120.  
  1121. Message : 1947 (OS/2 Programming Q&A)           Date... :  4/13/92 (11:25 Am)
  1122. From... : Wayne Schneider                       Refer.. : 1930
  1123. To..... : Scott Mccarty                         Sec'ty. : Public
  1124. Subject : Programming under OS/2                Rec'vd. : No
  1125.  
  1126. You may want to take a look at the Jensen TopSpeed environment for C, 
  1127. Pascal, and especially Modula-2 when it becomes available.  We've been 
  1128. using it for 4 years and really like it.  It includes a reasonably good 
  1129. source code debugger, full screen editor, fast compiler, and a very good 
  1130. optimizer.  The Modula-2 programming language fits with OS/2 like a hand in 
  1131. glove.  Much better than the other single letter languages. 
  1132.  
  1133. Message : 1948 (OS/2 Programming Q&A)           Date... :  4/13/92 (12:7 Am)
  1134. From... : Gary Snider                           Refer.. : None
  1135. To..... : All                                   Sec'ty. : Public
  1136. Subject : Calling DOS from OS/2                 Rec'vd. : No
  1137.  
  1138. Is there any way to call a DOS applcation from an OS/2 application?  I want 
  1139. to call a DOS file transfer program from a COBOL OS/2 application.  Thanks. 
  1140.  
  1141. Message : 1949 (OS/2 Programming Q&A)           Date... :  4/13/92 (7:39 Pm)
  1142. From... : William Rucker                        Refer.. : 1946
  1143. To..... : Bill Kenning                          Sec'ty. : Public
  1144. Subject : OS/2 2.0 Debugging                    Rec'vd. : Yes
  1145.  
  1146. Thanks for your help.
  1147. -Bill
  1148.  
  1149. Message : 1950 (OS/2 Programming Q&A)           Date... :  4/13/92 (11:0 Pm)
  1150. From... : Michael Kupka                         Refer.. : 1945
  1151. To..... : William Rucker                        Sec'ty. : Public
  1152. Subject : OS/2 2.0 Debugging                    Rec'vd. : Yes
  1153.  
  1154.     What Books are currently available as guides to 2.0 programming?
  1155.  
  1156. Message : 1951 (OS/2 Programming Q&A)           Date... :  4/14/92 (8:14 Pm)
  1157. From... : Steve Newell                          Refer.. : 1950
  1158. To..... : All                                   Sec'ty. : Public
  1159. Subject : Zmodem Source for OS/2                Rec'vd. : No
  1160.  
  1161. I am looking for source to the Zmodem file transfer protocol.  Does anyone 
  1162. know where I can locate some?  I have a copy of the original source for 
  1163. sz/rz, but it is several years old, and was written for Unix.  It is pretty 
  1164. criptic w/o comments.  I would appreciate any information, especially if 
  1165. the source has already been ported to OS/2. 
  1166.    
  1167. Thanks 
  1168.  
  1169. Message : 1952 (OS/2 Programming Q&A)           Date... :  4/15/92 (3:36 Am)
  1170. From... : Bill Kenning                          Refer.. : None
  1171. To..... : All                                   Sec'ty. : Public
  1172. Subject : Heap Memory API Errors                Rec'vd. : No
  1173.  
  1174. I'm setting up a heap in an OS/2 2.0 program using the following
  1175. API calls:
  1176.   
  1177.      DosAllocMem       \
  1178.      DosSetMem          >     Heap initialization
  1179.      DosSubSetMem      /
  1180.           .
  1181.           .
  1182.      DosSubAllocMem     \     Multiple heap suballocations and
  1183.      DosSubFreeMem      /     de-suballocations in program
  1184.           .
  1185.           .
  1186.      DosSubUnsetMem     \
  1187.      DosFreeMem         /     Heap deinitialization
  1188.   
  1189. My question is regarding the return error values for some of the
  1190. above calls.  The errors are documented, but not what could cause
  1191. them (in any detail at least).
  1192.   
  1193. Q1 > How can the 'ERROR_INTERRUPT' occur ?  This value can be
  1194.      returned for 'DosAllocMem', 'DosSetMem' and 'DosFreeMem'.
  1195.      What can interrupt a memory allocation or deallocation ?
  1196.      What is the recommended error recovery scheme ?
  1197. Q2 > Is the 'ERROR_ACCESS_DENIED' error given only when access to
  1198.      read-only or write-only memory is attempted ?
  1199. Q3 > What causes the 'ERROR_DOSSUB_SHRINK' error to be issued for
  1200.      the 'DosSubSetMem' call ?
  1201. Q4 > The error 'ERROR_DOSSUB_CORRUPTED' can be issued with the
  1202.      'DosSubAllocMem' 'DosSubFreeMem' and 'DosSubUnsetMem' calls.
  1203.      What could corrupt the heap ?  What is an appropriate error
  1204.      recovery method ?
  1205. Q5 > Are the heap errors in 'Q3' and 'Q4' basically due to bad
  1206.      pointers or memory sizes allocated ?
  1207.   
  1208. Regards...
  1209.  
  1210. Message : 1953 (OS/2 Programming Q&A)           Date... :  4/15/92 (6:27 Am)
  1211. From... : Ken Kahn                              Refer.. : 1945
  1212. To..... : William Rucker                        Sec'ty. : Public
  1213. Subject : OS/2 2.0 Debugging                    Rec'vd. : Yes
  1214.  
  1215. The Kernel Debugger will be included with the 2.0 Programmers ToolKit. 
  1216.  
  1217. Message : 1954 (OS/2 Programming Q&A)           Date... :  4/15/92 (9:46 Am)
  1218. From... : Michael Wynne                         Refer.. : None
  1219. To..... : All                                   Sec'ty. : Public
  1220. Subject : Undocumented thingys                  Rec'vd. : No
  1221.  
  1222. Hi everybody, here's a funny thing, OS/2 has an undocumented command called 
  1223. AUTOFAIL, does anbody know what it does, it seems to like the parameter 
  1224. =YES or =NO, but I havnt a clue as to what it does, can anybody help. ?? 
  1225. thanks Michael. 
  1226.  
  1227. Message : 1955 (OS/2 Programming Q&A)           Date... :  4/15/92 (2:12 Pm)
  1228. From... : Dave Ferrey                           Refer.. : 1954
  1229. To..... : Michael Wynne                         Sec'ty. : Public
  1230. Subject : Undocumented thingys                  Rec'vd. : Yes
  1231.  
  1232. AUTOFAIL is documented in 2.0, I don't know if the explaination applies
  1233. to 1.3 and back.  
  1234. According to 2.0, AUTOFAIL=YES means that when a 'hard' error (an error
  1235. which requires a system reconfiguration(?) an error code will be
  1236. displayed.  When AUTOFAIL=NO, a window will be displayed, describing the
  1237. error.
  1238. Maybe someone else can elaborate.
  1239. Dave
  1240.  
  1241. Message : 1956 (OS/2 Programming Q&A)           Date... :  4/15/92 (2:56 Pm)
  1242. From... : Dave Ferrey                           Refer.. : None
  1243. To..... : All                                   Sec'ty. : Public
  1244. Subject : Query processes                       Rec'vd. : No
  1245.  
  1246. I am looking for a way to determine the process id (PID) for the active
  1247. processes on my OS/2 2.0 system.  I understand there was an undocumented
  1248. function call in previous versions to do this (DosQProcStatus).  
  1249. Does anyone know how to obtain this information in OS/2 2.0.
  1250.  
  1251. The PSTAT command is still there and I suppose as a last resort I could
  1252. use it, but that would be 'expensive'. 
  1253.  
  1254. Dave
  1255.  
  1256. Message : 1957 (OS/2 Programming Q&A)           Date... :  4/15/92 (9:24 Pm)
  1257. From... : Sysop                                 Refer.. : 1951
  1258. To..... : Steve Newell                          Sec'ty. : Public
  1259. Subject : Zmodem Source for OS/2                Rec'vd. : Yes
  1260.  
  1261. < I am looking for source to the Zmodem file transfer protocol.  Does anyon 
  1262. < know where I can locate some?  I have a copy of the original source for 
  1263. < sz/rz, but it is several years old, and was written for Unix.  It is pret 
  1264. < criptic w/o comments.  I would appreciate any information, especially if 
  1265. < the source has already been ported to OS/2. 
  1266. <  
  1267. Contact Omen Technologies.  They wrote Zmodem. 
  1268.    
  1269. Wyn Easton - SysOp 
  1270.  
  1271. Message : 1958 (OS/2 Programming Q&A)           Date... :  4/16/92 (4:48 Am)
  1272. From... : Jpaul Rambaud                         Refer.. : None
  1273. To..... : All                                   Sec'ty. : Public
  1274. Subject : DEVICE DRIVERS                        Rec'vd. : No
  1275.  
  1276. What are refernce manuals to read before starting
  1277. device drivers development
  1278. - on OS/2 V1
  1279. - on OS/2 V2
  1280. What are development tools available in either environments ?
  1281.  
  1282. Message : 1959 (OS/2 Programming Q&A)           Date... :  4/16/92 (9:18 Am)
  1283. From... : Alan Mantei                           Refer.. : 1955
  1284. To..... : Dave Ferrey                           Sec'ty. : Public
  1285. Subject : Undocumented thingys                  Rec'vd. : Yes
  1286.  
  1287. I had used autofail briefly under 1.3, and unless it has changed, it
  1288. isn't just for errors requiring a system reconfig...  It basically
  1289. chooses what would be equivelant to the default action when a dialog box
  1290. pops up with an error.  This can be handy for unattended operations, like
  1291. running a BBS.  
  1292.  
  1293. Message : 1960 (OS/2 Programming Q&A)           Date... :  4/16/92 (2:33 Pm)
  1294. From... : Doug Burger                           Refer.. : None
  1295. To..... : All                                   Sec'ty. : Public
  1296. Subject : COM01.SYS problem                     Rec'vd. : No
  1297.  
  1298. Is there anyone on this board that can help me with this problem?  I have
  1299. asked once before, but I have a few more details now.
  1300.   
  1301. I am running OS/2 1.3 and a communication program I have written that
  1302. communciates async via the DosRead/Write and DosDevIOCtl functions.  I am
  1303. putting the device driver in RTS flow control mode and this works fine
  1304. for a number of hours.  At some point, the device driver will drop the
  1305. RTS signal and hold it low.  Needless to say, this stops communications
  1306. rather effectively.  I have verified that the input buffer is empty;
  1307. there is no reason for RTS to be low.  The program reports 0 bytes read,
  1308. but that the RTS line is low.  A datascope shows that the RTS will stay
  1309. low until the DosClose function is performed on the port.
  1310.   
  1311. Has anyone experienced this problem or something like it?  Have there
  1312. been any updates to the device driver?  I did not find any in this BBS's
  1313. file directories.  Finally, can someone point me to a telephone number
  1314. where I could get some more help?  This is a rather critical situation I
  1315. am in.
  1316.  
  1317. I would appreciate a response.
  1318.  
  1319. doug
  1320.  
  1321. Message : 1961 (OS/2 Programming Q&A)           Date... :  4/16/92 (3:44 Pm)
  1322. From... : Lynn Deffenbaugh                      Refer.. : 1921
  1323. To..... : George Barrowcliff                    Sec'ty. : Public
  1324. Subject : CPU Monitor                           Rec'vd. : Yes
  1325.  
  1326. George,
  1327.  
  1328. You might want to look into an IBM product called SPM/2 for System
  1329. Performance Monitor.  It shows CPU, DISK, MEMORY, and SWAPPER activity
  1330. under 1.3.  There is a documented programming interface (via named pipes)
  1331. that you can process the detailed performance data as you will.  It seems
  1332. to return data about EVERY single context switch and disk I/O.
  1333.  
  1334. The default SPMMON display is quite informative to watch as well.
  1335.  
  1336. Lynn (D)
  1337.  
  1338. Message : 1962 (OS/2 Programming Q&A)           Date... :  4/16/92 (3:47 Pm)
  1339. From... : Lynn Deffenbaugh                      Refer.. : 1932
  1340. To..... : Gary Little                           Sec'ty. : Public
  1341. Subject : NetBIOS IBM Token Ring                Rec'vd. : Yes
  1342.  
  1343. Gary,
  1344.  
  1345. We have a distributed application running under OS/2 V1.3 (ship level
  1346. believe it or not, no CSDs) that uses NetBIOS to communicate across a
  1347. 16Mbit token ring.  We have not experienced any packet corruption or loss
  1348. using the session layer of NetBIOS (not the DataGrams).
  1349.  
  1350. Our application uses a response per packet as opposed to a window of 10
  1351. (as you implied in your message).  We have a single thread that attempts
  1352. to keep a Receive-Any command outstanding at all times.  Whenever a
  1353. packet is received from the LAN, a new thread is spawned to deal with it
  1354. or an existing thread is released (via RAM semaphore) to process a
  1355. response.
  1356.  
  1357. It almost sounds like you are overwriting buffers between the receiving
  1358. thread and your main thread.  If the third packet is received while the
  1359. main thread is writing the first, the second will never be seen.  The
  1360. event counting may then cause the main thread to record the final buffer
  1361. (number 9) twice since that is all that's left in the buffer.
  1362.  
  1363. We use a separately allocated buffer for each Receive-Any that the
  1364. processing thread then free's up (we actually use DocAllocSeg/FreeSeg for
  1365. extra protection against walking too far through the buffer).
  1366.  
  1367. If this doesn't help, post back a reply and we can explore deeper.
  1368.  
  1369. Lynn (D)
  1370.  
  1371. Computer Task Group/Industrial Systems Integration
  1372.  
  1373.  
  1374. Message : 1963 (OS/2 Programming Q&A)           Date... :  4/16/92 (3:53 Pm)
  1375. From... : Lynn Deffenbaugh                      Refer.. : 1890
  1376. To..... : Greg Province                         Sec'ty. : Public
  1377. Subject : TRAP D Errors                         Rec'vd. : Yes
  1378.  
  1379. Gary,
  1380.  
  1381. I couldn't resist this one since we just delivered an EXTENSIVE
  1382. distributed application implemented in uSoft C (6.0a) using PM for
  1383. diagnostic windows that made CodeView debugging very painful.   As a
  1384. result, we seem to have found a way to get some USEFUL information out of
  1385. the "black screen".
  1386.  
  1387. First, the CS value seems to be translatable to the .EXE's .MAP file via
  1388. the following assignments:  0047=1:, 0067=2:, 0087=3:, 00a7=4:, ...
  1389.  
  1390. However, if you die in a DLL, traceback can be VERY interesting since the
  1391. DLL is loaded arbitrarily by OS/2 at runtime and (sometimes) isn't loaded
  1392. after the black screen appears.
  1393.  
  1394. We beat back that problem by having some startup code in our application
  1395. dump the addresses (via a printf("%p\n",DllRoutine)) to a viewable place
  1396. somewhere (like a .DMP file).  The selector of the DllRoutine's address
  1397. corresponds to the whatever: in the DLL's .MAP file.  We selected
  1398. routines that were in 1: in the DLL's .MAP file and then you can apply
  1399. the 0x0020 offset from there to locate the remainder.
  1400.  
  1401. We had a distinct advantage in that all of the DLLs in our application
  1402. were developed in-house.
  1403.  
  1404. All of the above information applies to a development under uSoft C
  1405. (6.01a) and OS/2 V1.3 (ship level, no CSDs).  We built all of our .EXEs
  1406. and .DLLs using a C-Runtime DLL taken EXACTLY from the CEXAMPLE described
  1407. in the Advanced Programming Techniques that came with uSoft C.  We even
  1408. kept the name CEXAMPLE in the delivery!
  1409.  
  1410. If you would like to know more, please drop a reply with questions and
  1411. I'll try to clarify whatever you need.
  1412.  
  1413. Lynn (D)
  1414.  
  1415. Computer Task Group / Industrial Systems Integration
  1416.  
  1417. Message : 1964 (OS/2 Programming Q&A)           Date... :  4/16/92 (4:13 Pm)
  1418. From... : Michael Weekley                       Refer.. : 1963
  1419. To..... : Lynn Deffenbaugh                      Sec'ty. : Public
  1420. Subject : TRAP D Errors                         Rec'vd. : No
  1421.  
  1422. For Trap-D debugging, hasn't anyone just set a breakpoint of CS:IP in 
  1423. Codeview? Most of the time when I use the BP command in CVP I stop at the 
  1424. offending source line (unless of course the trap occurred in system code). 
  1425. .  
  1426. For example, if CS=0047 and IP=06ec, then simply type 
  1427. .  
  1428.      BP 0x0047:0x06ec 
  1429. .  
  1430. at the CVP command window. 
  1431. .  
  1432. Does this help? 
  1433. Mike 
  1434.  
  1435. Message : 1965 (OS/2 Programming Q&A)           Date... :  4/16/92 (9:5 Pm)
  1436. From... : Brent Carter                          Refer.. : None
  1437. To..... : Scott Mccarty                         Sec'ty. : Public
  1438. Subject : programming in os/2                   Rec'vd. : No
  1439.  
  1440. just reading the messages and saw yours about programming in os/2... you
  1441. probably got your answer already, but for my 2 cents worth, i use brief
  1442. for os/2 when i write code.  99.44% of what i do is microsoft c, and
  1443. brief for os/2 is the absolutely most comfortable editor i've tried.  i
  1444. used it for years in pc-dos, and when we went to os/2 for our development
  1445. environment a few years ago, i got the os/2 version.  it lets you do
  1446. compiles, etc. without ever leaving the brief environ., and it's full
  1447. screen - not a pm window.  try it sometimes and see what you think.
  1448.  
  1449. Message : 1966 (OS/2 Programming Q&A)           Date... :  4/17/92 (12:15 Am)
  1450. From... : Greg Province                         Refer.. : 1929
  1451. To..... : Terry Fry                             Sec'ty. : Public
  1452. Subject : TRAP D Errors                         Rec'vd. : Yes
  1453.  
  1454. Terry -- A few have recommended Multiscope and I am going to get it ASAP.
  1455. As far as being able to determine where a protection violation occurred
  1456. in my program using just the TRAP D screen, I don't see how.  I did a
  1457. little test of a program which assigns an int value to location pointed
  1458. to by a bogus pointer.  It produced a genuine TRAP D screen as expected
  1459. and quite possibly the CS and IP pointed right to the assignment code. 
  1460. Then when I used a strcpy in it's place to do the dirty work -- the TRAP
  1461. D had a CS and IP which was way out in Standard Library land.  Since I
  1462. don't even get any of the stack displayed there seems no way that I could
  1463. determine the exact piece of my code that caused the error.  Right?
  1464. A post-mortem debugger definitely is the only way to go.
  1465.  
  1466. Message : 1967 (OS/2 Programming Q&A)           Date... :  4/17/92 (12:28 Am)
  1467. From... : Arthur Goikhman                       Refer.. : 1938
  1468. To..... : Steve Newell                          Sec'ty. : Public
  1469. Subject : file not found                        Rec'vd. : Yes
  1470.  
  1471. Another LIBPATH tricry useful is adding a dummy drive, say 
  1472. R:, and then using MAP (you got to be on NOVELL or other LAN) to point R:
  1473. to any directory
  1474.  
  1475. Message : 1968 (OS/2 Programming Q&A)           Date... :  4/17/92 (12:35 Am)
  1476. From... : Arthur Goikhman                       Refer.. : 1930
  1477. To..... : Scott Mccarty                         Sec'ty. : Public
  1478. Subject : Programming under OS/2                Rec'vd. : No
  1479.  
  1480. If you're up for some beta testing, it's possible to get beta C++ from
  1481. BORLAND.
  1482.  
  1483. Message : 1969 (OS/2 Programming Q&A)           Date... :  4/17/92 (12:47 Am)
  1484. From... : Arthur Goikhman                       Refer.. : 1927
  1485. To..... : Russell Wilson                        Sec'ty. : Public
  1486. Subject : DosQFileInfo call in 1.3              Rec'vd. : No
  1487.  
  1488. Has anyone heard of a way to tell which process has opened a file?
  1489.  
  1490. Message : 1970 (OS/2 Programming Q&A)           Date... :  4/17/92 (2:18 Pm)
  1491. From... : John Kennedy                          Refer.. : 1960
  1492. To..... : Doug Burger                           Sec'ty. : Public
  1493. Subject : COM01.SYS problem                     Rec'vd. : No
  1494.  
  1495.   Well, the latest CSD is XR05050 (SE) or WR05050 (EE).  Do you have
  1496. those on?
  1497.  
  1498. Message : 1971 (OS/2 Programming Q&A)           Date... :  4/17/92 (3:4 Pm)
  1499. From... : Joseph Schmitt                        Refer.. : 1956
  1500. To..... : Dave Ferrey                           Sec'ty. : Public
  1501. Subject : Query processes                       Rec'vd. : Yes
  1502.  
  1503. Dave,
  1504.    On Pete Norloff's OS/2 Shareware BBS there is a file called
  1505. KILLM2.ziZIP. It is a program that used the DosQProcStatus call. The file
  1506. comes with source and I have used it under OS/2 GA.
  1507. The source is in C.
  1508.  
  1509. Message : 1972 (OS/2 Programming Q&A)           Date... :  4/17/92 (3:12 Pm)
  1510. From... : Gary Little                           Refer.. : 1965
  1511. To..... : Brent Carter                          Sec'ty. : Public
  1512. Subject : programming in os/2                   Rec'vd. : No
  1513.  
  1514. How does it comapre to MS PWB?  I came from Brief to ME and then PWB and 
  1515. feel that PWB is better in regard to working with MS compilers and tools. 
  1516. The biggest PLUS I have found is the online documentation for MS languages, 
  1517. the project management (rudimantary but acceptable), and the ability build 
  1518. a make file with dependecies set for all source files.  Does Brief have 
  1519. these same features? 
  1520.    
  1521. (NOTE: this is asked in curios, not argumentative mode) 
  1522.    
  1523. Oh yeah, one more, will CL or MASM, or any compile activity run in the 
  1524. background?  THIS is the biggest plus for me. 
  1525.  
  1526. Message : 1973 (OS/2 Programming Q&A)           Date... :  4/17/92 (5:23 Pm)
  1527. From... : George Barrowcliff                    Refer.. : 1961
  1528. To..... : Lynn Deffenbaugh                      Sec'ty. : Public
  1529. Subject : CPU Monitor                           Rec'vd. : No
  1530.  
  1531. Thanks for your response, Lynn.  I called and spoke to the guys at CPUMON
  1532. last week and based on their guarantees and access to knowledgable people
  1533. there, I ordered a copy of CPUMON.  I will also look into SPM/2 to see if
  1534. it's capabilities are as good as or better than CPUMON.  Again Thanks.
  1535.  
  1536. Message : 1974 (OS/2 Programming Q&A)           Date... :  4/17/92 (5:29 Pm)
  1537. From... : George Barrowcliff                    Refer.. : None
  1538. To..... : All                                   Sec'ty. : Public
  1539. Subject : Programming Tools Upgrade             Rec'vd. : No
  1540.  
  1541. It seems odd to me that IBM in their infinite wisdom would chose to make
  1542. the ruling that the OS2 Programming Tools and Information for V1.3 will
  1543. not be subject to a free upgrade to the equivalent for V2.0.  I submit
  1544. for discussion, who now has copies of the Programming tools?  What are
  1545. they doing with them?  What does OS/2 need for success?  Why does IBM
  1546. choose to keep the programming tools for their new version on the shelf
  1547. (by not upgrading free) and therefore promote only development for V1.3?
  1548. Where are the applications for V2.0 going to come from?
  1549.    Am I the only one that wonders these things?
  1550.  
  1551. Message : 1975 (OS/2 Programming Q&A)           Date... :  4/18/92 (9:8 Pm)
  1552. From... : Arthur Goikhman                       Refer.. : 1971
  1553. To..... : Joseph Schmitt                        Sec'ty. : Public
  1554. Subject : Query processes                       Rec'vd. : Yes
  1555.  
  1556. I have seen code for DosQProcStatus for 1.3.  Could you clarify if the
  1557. source uses 2.0 information, that is is it 32 bit call?
  1558. Thanks
  1559.  
  1560. Message : 1976 (OS/2 Programming Q&A)           Date... :  4/18/92 (10:11 Pm)
  1561. From... : Bill Kenning                          Refer.. : None
  1562. To..... : All                                   Sec'ty. : Public
  1563. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : No
  1564.  
  1565. I suspect this is more of a WISH LIST item for OS/2 2.1, but I'll ask it
  1566. as a question.  I would like to 'fix' a portion of memory so that it is
  1567. not swappable.  I don't want to use the CONFIG.SYS 'no swap' option as it
  1568. disables all swapping.  I just want to fix a small data heap in memory to
  1569. insure that access to it will be as fast as possible.  Ideally the data
  1570. heap could be launched as a background object session.  The point of this
  1571. exercise is to allow multiple apps. (or copies of the same app.) to
  1572. access this memory.
  1573. The DEC RSM operating system has allowed 'fixed' memory for a long time. 
  1574. I worked on one system where a 2MB database was 'fixed' and the
  1575. application programs swapped in/out of memory.  The system was a
  1576. real-time process control system.  The database was the input/output data
  1577. (pressures, temperatures, flows, etc.) transmitted from remote
  1578. controllers over a telemetry system.  Obviously this data was globally
  1579. accessed by all the application programs for displays, logging to disk,
  1580. etc.
  1581. OS/2 2.0 does not appear to currently support 'fixing' memory objects in
  1582. RAM memory.  Is this true ?
  1583. I would propose that an additional attribute be added to the memory
  1584. allocation calls (example PAG_LOCK) to fix a memory object as
  1585. non-swappable.  What are the difficulties of doing this ?  Any insight to
  1586. this problem/feature would be appreciated.
  1587. Regards....
  1588.  
  1589. Message : 1977 (OS/2 Programming Q&A)           Date... :  4/19/92 (11:52 Am)
  1590. From... : David Kyle                            Refer.. : None
  1591. To..... : All                                   Sec'ty. : Public
  1592. Subject : OS/2 SNA APPC                         Rec'vd. : No
  1593.  
  1594. I have received the announcement for the OS/2 2.0 Pre-Release driver level 
  1595. 6.304.  I will be doing a large amount of work with SNA APPC in the OS/2 
  1596. environment and am wondering if the v2.0 (level 6.304) environment is 
  1597. stable 
  1598. enough to support such development?  If not, I will be forced to commit to 
  1599. v1.3. 
  1600.    
  1601. Any and all comments are welcome. 
  1602.    
  1603. Regards, 
  1604. David Kyle 
  1605.  
  1606. Message : 1978 (OS/2 Programming Q&A)           Date... :  4/19/92 (12:12 Am)
  1607. From... : Jack Hiatt                            Refer.. : 1977
  1608. To..... : David Kyle                            Sec'ty. : Public
  1609. Subject : OS/2 SNA APPC                         Rec'vd. : Yes
  1610.  
  1611.    
  1612. David, 
  1613. Don't know where you got an announcement release for 6.304, but OS/2 2.0 is 
  1614. now generally available, and the GA release is quite stable. 
  1615.  
  1616. Message : 1979 (OS/2 Programming Q&A)           Date... :  4/20/92 (12:32 Am)
  1617. From... : Eric Brunsen                          Refer.. : None
  1618. To..... : All                                   Sec'ty. : Public
  1619. Subject : OS/2 programming tools                Rec'vd. : No
  1620.  
  1621. It may be a bit late, but I thought I would add my input.  I have used 
  1622. QEdit for DOS for about 2 years, and for OS/2 for about 1 year.  I would 
  1623. not change for anything.  This editor is completely configuarable ( you can 
  1624. make it emulate ANY other editor). Their tech staff is great, and their BBS 
  1625. is full of great macros, keyboard configurations, and comments.  If you 
  1626. need further info leave me an e-mail.  No I am not an employee of theirs, 
  1627. just an extremely happy, loyal, and enthusiastic user/customer. 
  1628.    
  1629. Eric Brunsen 
  1630.  
  1631. Message : 1980 (OS/2 Programming Q&A)           Date... :  4/20/92 (3:24 Am)
  1632. From... : Michael Kupka                         Refer.. : None
  1633. To..... : All                                   Sec'ty. : Public
  1634. Subject : File Manager type listings?           Rec'vd. : No
  1635.  
  1636.      Does anyone know how to show a directory tree with a file or dictory
  1637. icon next to the file name, the way the file manager does? I would like
  1638. to use a directory tree instead of a file list box for selecting
  1639. files/directories.
  1640.      OR, does anyone know of any existing apps besides the file manager
  1641. that do this, so that I can contact the author.
  1642.      Thanks.
  1643.      Michael Kupka
  1644.  
  1645. Message : 1981 (OS/2 Programming Q&A)           Date... :  4/20/92 (3:34 Am)
  1646. From... : Michael Kupka                         Refer.. : None
  1647. To..... : All                                   Sec'ty. : Public
  1648. Subject : Internet Access?                      Rec'vd. : No
  1649.  
  1650.      Does IBM offer Internet access to this or similar support message
  1651. bases? I am primarily interested in Internet access for the Developers
  1652. Assistance Program. The Rep in Boca Raton said our application was
  1653. approved but did not know of internet availability, and I have not
  1654. recieved the Dev Asst Prg packet yet.
  1655.      Thanks
  1656.      Michael Kupka
  1657.      Internet: z_kupkams@ccsvax.sfasu.edu
  1658.  
  1659. Message : 1982 (OS/2 Programming Q&A)           Date... :  4/20/92 (7:16 Am)
  1660. From... : Taa2023 Fl                            Refer.. : 1980
  1661. To..... : Michael Kupka                         Sec'ty. : Public
  1662. Subject : File Manager type listings?           Rec'vd. : Yes
  1663.  
  1664. Try using an app called DirManager v 1.1c. I like it alot and its fast. I
  1665. am not sure if its here on the bbs but it can be found under the name of
  1666. dirman11.zip on OS/2 bbs or Fernwood. 
  1667.  
  1668. Message : 1983 (OS/2 Programming Q&A)           Date... :  4/20/92 (9:41 Am)
  1669. From... : Dave Ferrey                           Refer.. : 1971
  1670. To..... : Joseph Schmitt                        Sec'ty. : Public
  1671. Subject : Query processes                       Rec'vd. : Yes
  1672.  
  1673. I have downloaded source from Pete's BBS which uses DosQProcStatus.  My
  1674. linker can't find it however.  In any case I get a bit queasy about
  1675. using un-documented system calls.
  1676. Dave
  1677.  
  1678. Message : 1984 (OS/2 Programming Q&A)           Date... :  4/20/92 (9:31 Am)
  1679. From... : Anthony Winner                        Refer.. : 1958
  1680. To..... : Jpaul Rambaud                         Sec'ty. : Public
  1681. Subject : DEVICE DRIVERS                        Rec'vd. : No
  1682.  
  1683. jpaul, 
  1684.    
  1685. There are several ways to go about writing device drivers in OS/2. The best 
  1686. document to get is "Physical Device Driver Reference". It containes all the 
  1687. API's that you need to impliment all the device drivers that standard, comm 
  1688. ports, printer ports, disk drives, and the BASIC video driver. It also 
  1689. describes the call a DD can make into the kernel and at which time the can 
  1690. do each call. The difference between a 1.x driver and a 2.x driver is that 
  1691. the 2.x drivers can be 32 bit, but don't have to be. If you have to support 
  1692. both you can write a 1.x driver and it will work in 2.0. but a 1.x driver 
  1693. is slightly more complex as you have to support real mode too, a 2.0 driver 
  1694. does not. 
  1695.    
  1696. To debug the driver you use the debuging kernel, It uses COM2 to connect to 
  1697. a terminal, and you can set breakpoints, read reg., look at memory,... 
  1698.    
  1699. All of the above is in the programers toolkit. If your going to do IFS that 
  1700. you need the docs for that, which are hard to get. There is also a company 
  1701. the sells a DD that will replace the debugging kernel, "PCX" their ad is 
  1702. in "OS/2 monthly" on the back inside cover, what sort of docs. you get I 
  1703. don't know, as I'v never seen it. If you need more info i'm here. 
  1704.    
  1705. Anthony Winner 
  1706. OS/2 mechanic 
  1707.  
  1708. Message : 1985 (OS/2 Programming Q&A)           Date... :  4/20/92 (11:49 Am)
  1709. From... : John Kennedy                          Refer.. : 1974
  1710. To..... : George Barrowcliff                    Sec'ty. : Public
  1711. Subject : Programming Tools Upgrade             Rec'vd. : Yes
  1712.  
  1713.    The 1.3 tools are still current products, needed to create 1.3
  1714. programs (IBM is supporting 1.3 until 12/93) and (which is even more
  1715. important) FAPI programs.  For that reason, IBM regards the 2.0 kit as a
  1716. new, separate product to be purchased separately.
  1717.  
  1718.    I just keeping that Borland will listen to the requests on their
  1719. CompuServe forum and come out with Turbo Pascal for OS/2....
  1720.  
  1721. Message : 1986 (OS/2 Programming Q&A)           Date... :  4/20/92 (11:51 Am)
  1722. From... : John Kennedy                          Refer.. : 1976
  1723. To..... : Bill Kenning                          Sec'ty. : Public
  1724. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : Yes
  1725.  
  1726.   As far as I know, OS/2 does not support memory fixing, and there are
  1727. three reasons for this:
  1728.  
  1729.    OS/2 is a PC operating system, not a real-time system.  There are a
  1730. lot of real-time systems that do this job better.
  1731.  
  1732.    Fixing pages normally results in *lowered* throughput, although it may
  1733. be an advantage to one particular application. 
  1734.  
  1735.    Pages used by many processes (a case you mention) will normally be
  1736. kept in RAM by the least-recently-used algorithm anyway.
  1737.  
  1738. Message : 1987 (OS/2 Programming Q&A)           Date... :  4/20/92 (3:44 Pm)
  1739. From... : Gary Little                           Refer.. : 1976
  1740. To..... : Bill Kenning                          Sec'ty. : Public
  1741. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : Yes
  1742.  
  1743. If the DevHlp calls have not changed from 1.x to 2.0, does not AllocPhys
  1744. do this, ot is the definition of "fixed memory" different?
  1745.  
  1746. Message : 1988 (OS/2 Programming Q&A)           Date... :  4/20/92 (4:19 Pm)
  1747. From... : Joseph Schmitt                        Refer.. : 1975
  1748. To..... : Arthur Goikhman                       Sec'ty. : Public
  1749. Subject : Query processes                       Rec'vd. : No
  1750.  
  1751. The read me for the file says it is for 6.167 and I doesn't work in 1.3
  1752. so I assume it is a 32 bit call.
  1753.  
  1754. Message : 1989 (OS/2 Programming Q&A)           Date... :  4/20/92 (5:10 Pm)
  1755. From... : Davidp Fitzgerald                     Refer.. : None
  1756. To..... : Lynn Deffenbaugh                      Sec'ty. : Public
  1757. Subject : NetBIOS IBM Tokern Rn Ring            Rec'vd. : No
  1758.  
  1759. Lynn, I work with Gary Little and had him  leave the first message about 
  1760. the problem I'm experencing. 
  1761.    
  1762. I rewrote my test program using DosAllocSeg, DosSubAlloc and DosSubFree 
  1763. commands and also using DosAllocSeg and DosFree; the problem with packets 
  1764. being dropped continues. 
  1765.    
  1766. Here's a little more background on the test program. 
  1767.    
  1768. The sending routine is a dummy program set up to start (CALL) sessions then 
  1769. send a message for each session, on the sending side each session uses a 
  1770. separate Ncb and buffer.  The system waits to send the next message until 
  1771. the first has been completed and does so for each session that was started. 
  1772.    
  1773. The receiving system seems able to handle approximately nine messages 
  1774. before an error occurs.  And these messages are being received almost 
  1775. simultaneously. 
  1776. I'm fairly certain the problem comes from the NetBIOS driver routine(s) 
  1777. because when I print out the buffer address with the data messages I'm 
  1778. logging the data that is duplicated appears in two different buffers 
  1779. indicating that NETBIOS Receive-Any duplicated the message rather than the 
  1780. message being overwritten before it could be displayed. 
  1781.  
  1782. Message : 1990 (OS/2 Programming Q&A)           Date... :  4/20/92 (6:45 Pm)
  1783. From... : Jack Gelin                            Refer.. : 1988
  1784. To..... : Joseph Schmitt                        Sec'ty. : Public
  1785. Subject : Query processes                       Rec'vd. : No
  1786.  
  1787. Thanks.  I don'nt have the number for the BBS.  Can you post it?
  1788.  
  1789. Message : 1991 (OS/2 Programming Q&A)           Date... :  4/20/92 (7:40 Pm)
  1790. From... : Michael Kupka                         Refer.. : 1982
  1791. To..... : Taa2023 Fl                            Sec'ty. : Public
  1792. Subject : File Manager type listings?           Rec'vd. : Yes
  1793.  
  1794. Thanks for the info.
  1795.  
  1796. Message : 1992 (OS/2 Programming Q&A)           Date... :  4/20/92 (7:44 Pm)
  1797. From... : Steve Newell                          Refer.. : 1957
  1798. To..... : Sysop                                 Sec'ty. : Public
  1799. Subject : Zmodem Source for OS/2                Rec'vd. : No
  1800.  
  1801. Thanks. 
  1802.    
  1803. Do you (or anyone) know their number/address?? 
  1804.    
  1805. I appreciate it. 
  1806.    
  1807. Steve 
  1808.  
  1809. Message : 1993 (OS/2 Programming Q&A)           Date... :  4/20/92 (8:2 Pm)
  1810. From... : Will Boyce                            Refer.. : None
  1811. To..... : All                                   Sec'ty. : Public
  1812. Subject : Writing to the serial port            Rec'vd. : No
  1813.  
  1814. Greetings!  I'd appreciate any help on this issue:
  1815.  
  1816. I am writing a multithreaded BBS program under OS/2 1.3.  As I'm sure you
  1817. all know, I need to echo the characters typed by the user.
  1818.  
  1819. Right now, I get a character that the user has typed using DosRead() (the
  1820. file handle is from DosOpen()ing "COM2"), and then echo it using
  1821. DosWrite().  The problem is that DosWrite() seems to be abysmally slow. 
  1822. There is a visible delay between the time the key is pressed and when it
  1823. finally appears on the screen.  The echo has trouble keeping up with an
  1824. even moderately fast typist.
  1825.  
  1826. I notice this problem when sending modem control strings as well.  I send
  1827. the control strings one character at a time, since I want to be able to
  1828. process special characters in the string (pauses, control codes, etc.). 
  1829. However, even with only one session thread running, calling DosWrite() in
  1830. a pretty tight loop, writing one character each time, is horrendously
  1831. slow.
  1832.  
  1833. Does anyone have any advice?  Surely someone has noticed this before.
  1834.  
  1835. Thanks,
  1836. Will
  1837.  
  1838. Message : 1994 (OS/2 Programming Q&A)           Date... :  4/20/92 (9:57 Pm)
  1839. From... : Patrick Mueller                       Refer.. : 1950
  1840. To..... : Michael Kupka                         Sec'ty. : Public
  1841. Subject : OS/2 2.0 Debugging                    Rec'vd. : Yes
  1842.  
  1843. I've always gotten by with the OS/2 Toolkit Programming Guide and the
  1844. various reference manuals.  Some of the info is a bit terse, but that
  1845. just gives you a chance for some experimenting!  1.3 is close enough to
  1846. 2.0 that if you could get your hands on a 'old' set of 1.3 docs, that'd
  1847. be enough to get you started.
  1848.  
  1849. pat
  1850.  
  1851. Message : 1995 (OS/2 Programming Q&A)           Date... :  4/21/92 (2:11 Am)
  1852. From... : Bill Kenning                          Refer.. : 1986
  1853. To..... : John Kennedy                          Sec'ty. : Public
  1854. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : Yes
  1855.  
  1856. I don't agree that OS/2 is not a PC operating system *of choice* for
  1857. real-time applications....Many real-time applications are running under
  1858. OS/2 1.x.  My experience with the DEC RMS operating system showed that a
  1859. 16-bit system, limited to a max. of 4MB of RAM, was very satisfactory for
  1860. real-time...and OS/2 FAR surpasses that operating system in capability
  1861. and performance.
  1862. I don't see how 'fixed' memory can lower throughput.  RAM access is the
  1863. fastest method possible.  I would agree that 'fixed' memory would use a
  1864. precious resource (RAM memory).  I still wonder why I haven't seen any
  1865. RAM disk drivers for OS/2.  It seems this would speed up disk intensive
  1866. work like compiling large programs.  Maybe somebody has some input on
  1867. this ?
  1868. I guess my request is for the 2.1 Wish List.  Reiterating, I desire the
  1869. memory calls to have an additional attribute (PAG_LOCK or PAG_FIX) that
  1870. will 'fix' a memory object in RAM memory to insure that access to it by
  1871. application program(s) will be as fast as possible.
  1872. Lastly, I have put all of my critical memory objects into a seperate heap
  1873. memory object.  Hopefully, as you stated, the 'last used' memory
  1874. algorithm in OS/2 2.0 will keep them in RAM since they are constantly
  1875. being 'hit' by read/write requests.
  1876. Regards...
  1877.  
  1878. Message : 1996 (OS/2 Programming Q&A)           Date... :  4/21/92 (2:23 Am)
  1879. From... : Bill Kenning                          Refer.. : 1987
  1880. To..... : Gary Little                           Sec'ty. : Public
  1881. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : No
  1882.  
  1883. 'DevHlp' is no longer supported in OS/2 2.0.  The DosxxxMem calls have
  1884. all been changed since the 32-bit paged memory model is now used. 
  1885. The 2.0 DosxxxMem calls do not appear (to me at least) of supporting
  1886. 'fixed' memory.
  1887. Regards...
  1888.  
  1889. Message : 1997 (OS/2 Programming Q&A)           Date... :  4/21/92 (9:23 Am)
  1890. From... : Dave Both                             Refer.. : None
  1891. To..... : All                                   Sec'ty. : Public
  1892. Subject : OS/2 Free upgrades                    Rec'vd. : No
  1893.  
  1894. OS/2 NO CHARGE UPGRADE EXCEPTIONS 
  1895.    
  1896. An important part of our OS/2 marketing plan is to expeditiously upgrade 
  1897. our OS/2 installed base to OS/2 2.0.  To encourage this, IBM announced 
  1898. in April 1991 that customers acquiring OS/2 1.3 would be able to upgrade 
  1899. to OS/2 2.0 at no charge.  When it was announced in October 1991, this 
  1900. promotion was enhanced to enable all customers to receive a no charge 
  1901. upgrade regardless of which version of OS/2 they had acquired or when 
  1902. they acquired it. 
  1903.    
  1904. In order to accomplish this no charge upgrade of the entire install 
  1905. base,  the promotion announced that upgrades are to be fulfilled 
  1906. primarily through Additional Licenses.  Each customer location is 
  1907. entitled to receive a no charge set of diskettes and documentation with 
  1908. the balance of upgrades at that location being fulfilled by Additional 
  1909. Licenses.   This cost saving procedure has been satisfactory for the 
  1910. majority of our customers. 
  1911.    
  1912. In some accounts with large numbers of OS/2 licenses at a single 
  1913. location, a single set of diskettes has not proved satisfactory to 
  1914. the customer.  Trading Area General Managers have been given authority 
  1915. and instructions to handle a limited number of adverse customer 
  1916. situations. 
  1917.    
  1918. If you have a severe customer satisfaction problem that would warrant 
  1919. a marketing concession, contact your Trading Area General Manager for 
  1920. assistance. 
  1921.    
  1922. ********************************************************************** 
  1923. FYI... 
  1924.    
  1925. Dave (:>) 
  1926.  
  1927. Message : 1998 (OS/2 Programming Q&A)           Date... :  4/21/92 (11:16 Am)
  1928. From... : John Kennedy                          Refer.. : 1995
  1929. To..... : Bill Kenning                          Sec'ty. : Public
  1930. Subject : OS/2 2.0 Memory Calls                 Rec'vd. : No
  1931.  
  1932.    A RAM disk comes standard with all versions of OS/2 1.x -- VDISK.
  1933. I don't know offhand if it's in 2.x, but I would be quite surprised if it
  1934. weren't.
  1935.  
  1936.    As to the other point, fixing RAM improves the performance of the
  1937. application it's supposed to benefit, but harms the performance of other
  1938. applications, and in all but pathological cases, the _total_ throughput
  1939. on the system will suffer a net loss.  "Ah," you say, "but what if I'm
  1940. not running any other application?"  Well, in that case, either the
  1941. memory will be resident anyway, or your one application is already
  1942. thrashing, and fixing part of it will only make it worse.
  1943.  
  1944.    Now, if you really do have one application that _must_ have fast
  1945. response all the time and you're willing to accept a loss of total system
  1946. efficiency to boost that application, _and_ that application is only
  1947. intermittently busy, so that merely giving it a high priority isn't
  1948. enough to keep its pages resident, _then_ memory fixing is the right way
  1949. to go.  But that isn't what OS/2 is being optimized for.
  1950.  
  1951.    Look at it this way -- either the memory is being used all the time,
  1952. in which case it will stay resident, or it _isn't_ being used all the
  1953. time, in which case when your real-time application is idle, your other
  1954. applications are suffering, because there's hardware being deliberately
  1955. left idle.
  1956.  
  1957. Message : 1999 (OS/2 Programming Q&A)           Date... :  4/21/92 (12:34 Am)
  1958. From... : Barry Borror                          Refer.. : None
  1959. To..... : All                                   Sec'ty. : Public
  1960. Subject : DOS FILE HANDLES IN D BOX             Rec'vd. : No
  1961.  
  1962. I HAVE A CLIPPER APPLICATION THAT USES SOME 23 FILE HANDLES UNDER DOS. 
  1963. WHEN I ATTEMPT TO RUN IT IN THE DOS COMPATIBILITY BOX IN OS/2 1.31 I 
  1964. RECIEVE A DOS LEVEL 4 ERROR MESSAGE - TOO MANY OPEN FILES.  DOES ANYONE 
  1965. KNOW HOW TO INCREASE THE NUMBER OF FILE HANDLES AVAILABLE TO THE DOS BOX? 
  1966.    
  1967. THANKS, 
  1968.    
  1969. BARRY 
  1970.  
  1971. Message : 2001 (OS/2 Programming Q&A)           Date... :  4/21/92 (8:16 Pm)
  1972. From... : Thomas Atkinson                       Refer.. : 1870
  1973. To..... : Dave Both                             Sec'ty. : Public
  1974. Subject : Sessions                              Rec'vd. : No
  1975.  
  1976. Do you know of the reason why some 1.3 programs do not allow and
  1977. alteration of the session tab of that 1.3 programs notepad ?  I believe
  1978. an example would be Pmcomm, is this an unfixable occurrence ?
  1979.  
  1980.